Добрый вечер! Помогите Пожалуйста написать программу: Дан целочисленный двумерный массив размера n*m . Преобразовать его следующим образом: в каждом столбце заменить минимальным элементом массива все элементы предшествующие (по номеру) минимальному элементу в этом столбце
Lapp
19.04.2011 1:27
Цитата(Merhaba @ 18.04.2011 21:00)
Добрый вечер! Помогите Пожалуйста написать программу: Дан целочисленный двумерный массив размера n*m . Преобразовать его следующим образом: в каждом столбце заменить минимальным элементом массива все элементы предшествующие (по номеру) минимальному элементу в этом столбце
Даю полное решение, но в нем одна ошибка. Я ее сделал специально. Найди и исправь. Ошибка в одном символе.
const n= 10; m= 15;
var i,j,c: integer; b: array [1..m] of integer; a: array [1..n,1..m] of integer;
begin for i:=1 to n do for j:=1 to m do a[i,j]:= Random(100); WriteLn('before:'); for i:=1 to n do begin for j:=1 to m do Write(a[i,j]:3); WriteLn end;
for j:=1 to m do b[j]:= 1; for i:=2 to n do for j:=1 to m do if a[i,j]<a[b[j],j] then b[j]:= i; c:= a[b[1],1]; for j:=2 to 3 do if a[b[j],j]<c then c:= a[b[j],j]; for j:=1 to m do for i:=1 to b[j]-1 do a[i,j]:= c;
WriteLn('after:'); for i:=1 to n do begin for j:=1 to m do Write(a[i,j]:3); WriteLn end; ReadLn end.
Merhaba
19.04.2011 5:58
Цитата(Lapp @ 19.04.2011 2:27)
Даю полное решение, но в нем одна ошибка. Я ее сделал специально. Найди и исправь. Ошибка в одном символе.
a[i,j]:3
что тут обозначает цифра 3?
Lapp
19.04.2011 6:09
Цитата(Merhaba @ 19.04.2011 6:58)
что тут обозначает цифра 3?
Это форматированный вывод. Число означает длину поля вывода в позициях. В данном случае число выводится в трех позициях, справа. Левые позиции заполняются пробелами до полной длины поля. Это обеспечивает ровный вывод по столбцам независимо от значности числа.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.