Написать для исполнителя (Стрелочка) программу по которой он расчертит все поле в клетку со стороной 1 шаг. Исходные данные: исполнитель в верхнем левом углу, направление вниз.
В операторах Dat[1] := 7; ... ; Dat[10] := 9; задаются элементы массива. 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
// PascalABC.NET 3.2, сборка 1427 от 24.04.2017 // Внимание! Если программа не работает, обновите версию!
begin var m:=ReadInteger('Количество строк в массиве:'); var n:=ReadInteger('Количество колонок в массиве:'); Writeln('*** Исходный массив [',m,',',n,'] ***'); var a:=MatrRandom(m,n,-9,9); a.Println(3); Writeln(3*a.ColCount*'-'); Write('Колонок, где все элементы различны, ', a.Cols.Where(c->c.Distinct.Count=m).Count); 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