Помощь - Поиск - Пользователи - Календарь
Полная версия: Нахождение MAX матрицы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
-=NEXT=-
Помогите пожалуйста решить задачку, а то не очень шарю в Паскале.
Задача: необходимо с помощью функции найти max элемент в каждом столбце массива и среди них найти min.
Заранее премного благодарен!
мисс_граффити
И в чем проблема? В поиске max?
-=NEXT=-
Да, в поиске max через функцию. Я с ними вообще разобраться ни как не могу.

 ! 
Ты сначала с Правилами Форума разберись... Или тебе кажется, что задавать вопросы в чужих темах - это нормально? Так вот ты ошибаешься. Еще раз повторится - получишь наказание.

-=NEXT=-
Ну помогите кто-нибудь. Пожалуйста.
мисс_граффити
ну ты покажи, что пробовал делать...
или поиском воспользуйся.
-=NEXT=-
Я сделал программу, она работает, только нахождение max и min элемента не через функцию. Вот текст проги:

Program z4;
const N=6; M=6;
var
A:array [1..N,1..M] of integer;
i,j,max1,max2,max3,max4,max5,max6,min:integer;
F:text;
begin
assign(F,'z4.txt');
rewrite(F);
randomize;
for i:=1 to N do begin
for j:=1 to M do begin
A[i,j]:=random (51)-10;
write(A[i,j],' ');
write(F,A[i,j],' ');
end;
writeln;
writeln(F);
end;
begin
max1:=A[1,1];
j:=1;
for i:=1 to N do begin
if A[i,j]>max1 then begin
max1:=A[i,j];
end; end;
max2:=A[1,2];
j:=2;
for i:=1 to N do begin
if A[i,j]>max2 then begin
max2:=A[i,j];
end; end;
max3:=A[1,3];
j:=3;
for i:=1 to N do begin
if A[i,j]>max3 then begin
max3:=A[i,j];
end; end;
max4:=A[1,4];
j:=4;
for i:=1 to N do begin
if A[i,j]>max4 then begin
max4:=A[i,j];
end; end;
max5:=A[1,5];
j:=5;
for i:=1 to N do begin
if A[i,j]>max5 then begin
max5:=A[i,j];
end; end;
max6:=A[1,6];
j:=6;
for i:=1 to N do begin
if A[i,j]>max6 then begin
max6:=A[i,j];
end; end;
writeln('max1= ',max1);
writeln(F,'max1= ',max1);
writeln('max2= ',max2);
writeln(F,'max2= ',max2);
writeln('max3= ',max3);
writeln(F,'max3= ',max3);
writeln('max4= ',max4);
writeln(F,'max4= ',max4);
writeln('max5= ',max5);
writeln(F,'max5= ',max5);
writeln('max6= ',max6);
writeln(F,'max6= ',max6);
min:=max1;
if max2<min then min:=max2;
if max3<min then min:=max3;
if max4<min then min:=max4;
if max5<min then min:=max5;
if max6<min then min:=max6;
writeln('min= ',min);
writeln(F,'min= ',min);
end;
close(F);
readln;
end.


 ! 
Теги !

мисс_граффити
а что ты будешь делать, если m=100?
почему не сделать вместо
max1,max2,max3,max4,max5,max6
один массив max[1..m]?
и работать с ними в человеческом цикле....
-=NEXT=-
Ну да так конечно лучше будет, но это не главное. Мне надо сделать нахождение через функцию. А я в них ваще не шарю. Может ты мне поможешь??? give_rose.gif А???
мисс_граффити
почитай в FAQ про то, как передавать матрицу в подпрограмму.
-=NEXT=-
Че то я там ни чего тако не нашел.
klem4
Поиск -> Задача +матрицу

КУЧА задач на матрицы и массивы решены с использованием подпрограмм.
-=NEXT=-
Мне то надо про функции, а про них там ни чего нет. Работыть с матрицами я умею.
Ozzя
Какая разница? Функции или процедуры? Берешь с процедурой, оформляешь как функцию. Всё.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.