Var k, m, n: integer; dat: array[1..10] of integer; begin dat[1] : = 7; dat[2] : = 9; dat[3] : = 10; dat[4] : = 5; dat[5] : = 6; dat[6] : = 7; dat[7] : = 9; dat[8] : = 10; dat[9] : = 6; dat[10] : = 9; m : = 0; n : = 0; for k : = 1 to 10 do if dat[k] > = m then begin m : = dat[k]; n : = k end; writeln(n) end. решить с пояснением
m := 0; n := 0; - начальные значения переменных m и n.
В цикле for k := 1 to 10 do ... каждый элемент массива сравнивается с текущим значением переменной m (Dat[k] >= m). Если элемент больше, то значения переменных m и n меняются: в переменной m запоминается значение элемента массива, в переменной n - значение номера (индекс) этого элемента. Таким образом, после выполнения цикла значения переменных будут: m=10; n=8. На экран будет выведено значение 8 (это номер последнего максимального элемента массива).
ответ: 8