Program maxsimum; const n=10; var a:array [1..n] of integer; max,i:integer;begin ВВОД ЭЛЕМЕНТОВ МАССИВА; max:=a[1]; for i:=2 to n do if a[i]> max then max:=a[i]; writeln; write(наибольший элемент массива =,max); readlnend. Максимальный элемент
max := a[1]; { считаем, что первый – максимальный } iMax := 1; for i:=2 to N do { проверяем все остальные } if a[i] > max then { нашли новый максимальный } begin max := a[i]; { запомнить a[i] } iMax := i; { запомнить i } end; Дополнение: Нахождение номера максимального элемента?
Максимальный элемент max := a[1]; { считаем, что первый – максимальный } iMax := 1; for i:=2 to N do { проверяем все остальные } if a[i] > max then { нашли новый максимальный } begin max := a[i]; { запомнить a[i] } iMax := i; { запомнить i } end; По номеру элемента iMax всегда можно найти его значение a[iMax]. Поэтому везде меняем max на a[iMax] и убираем переменную max. a[iMax]
Программа нахождения максимального элемента массива из 5 элементов, заданных случайным образом из интервала от 50 до 150. program qq; const N = 5; var a: array [1..N] of integer; i, iMax: integer; begin writeln('Исходный массив:'); for i:=1 to N do begin a[i] := random(100) + 50; write(a[i]:4); end; iMax := 1; { считаем, что первый – максимальный } for i:=2 to N do { проверяем все остальные } if a[i] > a[iMax] then { новый максимальный } iMax := i; { запомнить i } writeln; {перейти на новую строку} writeln('Максимальный элемент a[', iMax, ']=', a[iMax]); end. случайные числа в интервале [50,150) поиск максимального
Задание: 1)Изменить программу так, чтобы массив состоял из 7 элементов (без блока констант).
Программа program qq; var a: array [1..7] of integer; i, iMax: integer; begin writeln('Исходный массив:'); for i:=1 to 7 do begin a[i] := random(100) + 50; write(a[i]:4); end; iMax := 1; { считаем, что первый – максимальный } for i:=2 to 7 do { проверяем все остальные } if a[i] > a[iMax] then { новый максимальный } iMax := i; { запомнить i } writeln; {перейти на новую строку} writeln('Максимальный элемент a[', iMax, ']=', a[iMax]); end. случайные числа в интервале [50,150) поиск максимального
Задание: 1)Изменить программу так, чтобы массив состоял из 7 элементов (без блока констант). 2)Изменить программу так, чтобы каждый элемент увеличивался в 10 раз. (максимум не находить!)
Программа program qq; var a: array [1..7] of integer; i, iMax: integer; begin writeln('Исходный массив:'); for i:=1 to 7 do begin a[i] := random(100) + 50; write(a[i]:4); end; for i:=1 to 7 do begin a[i]:=a[i]*10 ; writeln('a[', i, ']=', a[i]); end; End. случайные числа в интервале [50,150)
Дополнительное задание Заполнить массив из 10 элементов случайными числами в интервале [ ] и найти в нем максимальный и минимальный элементы и их номера. Пример: Исходный массив: максимальный a[4]=10 минимальный a[8]=-10