Дана действительная матрица размера N*M, все элементы которой различны. В каждой строке выбирается элемент с наименьшим значением, затем среди этих чисел выбирается наибольшее. Указать индексы элемента с найденным значением
Категория: Delphi/Pascal
2012-10-02 15:46:57
code: #pascal
const n=8;{количество строк} m=10;{количество столбцов} Var a: array [1..n,1..m] of real;{данная матрица} i,j,k,l,v:integer; minj,maxi:real; BEGIN {заполнение матрицы произвольными положительными действительными числами от 0 до 99} randomize; For i:=1 to n do For j:=1 to m do a[i,j]:=random(100); maxi:=-1;{так как все числа положительные (мы сами так заполнили)} For i:=1 to n do begin minj:=a[i,1];{предположим что первый элемент каждой i-ой строки минимальный} For j:=2 to m do {сравниваем все остальные элементы строки с уже найденным минимальным} If a[i,j]<minj then begin{если он меньше уже найденного то} minj:=a[i,j];{он минимальный} v:=j;{сохраняем его номер столбца} end; {проверяем только что полученный элемент на максимум} If minj>maxi then begin{если верно то сохраняем его и его индексы} k:=i; l:=v; maxi:=minj; end; end; {Выводим искомый элемент и его индексы хоть в едите хоть в лабеле} END.
автор: Djon
Поделиться: