Program l; uses crt; const Var a:array[1..n] of itenger; max,i:integer; begin clrscr; randomize for i:=1 to n do a[i]:=random; for i:=1 to n do write(a[i],' '); writeln; max:=a[i]; for i:2 to n do if a[i]>max then begin max:=a[i]; end; writeln('Max= ',max:2,i:2); readln; end. скажите правильно ли составлена программа поиска максимального элемента матрицы?она почему то не работает, подскажите что не так?
1. Исправь название (Правила Форума, п.4, и правила раздела Задачи, п.1) 2. Используй тэги (Правила Форума, п.5, и правила раздела Задачи, п.2) Не сделаешь - тема будет закрыта
S2DenT
3.12.2010 0:08
Цитата(Stellar_light @ 26.11.2010 22:09)
Program l; uses crt; const Var a:array[1..n] of itenger; max,i:integer; begin clrscr; randomize for i:=1 to n do a[i]:=random; for i:=1 to n do write(a[i],' '); writeln; max:=a[i]; for i:2 to n do if a[i]>max then begin max:=a[i]; end; writeln('Max= ',max:2,i:2); readln; end. скажите правильно ли составлена программа поиска максимального элемента матрицы?она почему то не работает, подскажите что не так?
ну вообще матрицу(массив) лучше вводить процедурой!=)
program massiv; uses crt; const n=5; type mas= array [1..n] of integer; var a:mas; i:integer; max:real; procedure wwod(var a:mas); var k:integer; begin for k:=1 to n do begin write ('[',k,']='); readln (a[k]); end; end; begin clrscr; write ('Введите матрицу'); writeln; wwod (a); max:=a[1]; for i:=1 to n do if a[i]>max then max:=a[i]; writeln ('Максимальный элеиент матрицы-->',max);
end.
Цитата
const n=5;
5 это число элементов массива. если надо, то можно изменить на свое значение!=)
Гость
3.12.2010 2:18
max:=a[i];
Замени на
max := a[1];
Современная среда бы выдала предупреждение, что переменная i в этом месте может принимать непредсказуемое значение.
S2DenT
3.12.2010 3:27
Цитата(Гость @ 2.12.2010 22:18)
max:=a[i];
Замени на
max := a[1];
Современная среда бы выдала предупреждение, что переменная i в этом месте может принимать непредсказуемое значение.
в данной задаче можно присвоить максимальное значение первому элементу и пограмма автоматически сравнит все значения между собой
так что не обязательно
max := a[1];
можно и
max:=a[i];
Гость
3.12.2010 3:38
> можно и max:=a[i];
Нельзя. Прогони это для массива (5,4,3,2,1).
Гость
3.12.2010 3:40
Я про то, что вместо
max:=a[i]; for i:2 to n do if a[i]>max then begin max:=a[i];
надо написать
max:=a[1]; for i:2 to n do if a[i]>max then begin max:=a[i];
Lapp
3.12.2010 3:51
!
Закрыто. Правила Форума, п.4, и правила раздела Задачи, п.1.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.