// PascalABC.NET 3.1, сборка 1213 от 04.04.2016 function Sod(x:integer):integer; begin x:=abs(x); Result:=0; while x>0 do begin Result+=x mod 10; x:=x div 10 end end;
begin var a:=ArrRandom(ReadInteger('n='),1,999); a.Println; Write('Минимальный четный, делящийся на три: '); var b:=a.Where(x->(x mod 3=0) and x.IsEven); if b.Count>0 then Writeln(b.Min) else Writeln('не существует'); Write('Количество элементов с четностью, как у их места: '); Writeln(a.Where((x,i)->(x mod 2)=((i+1) mod 2)).Count); Write('Число, сумма цифр которого наибольшая: '); var i:=a.Select(x->Sod(x)).ToArray.IndexMax; Writeln(a.ElementAt(i)); Write('Искомое количество пар: '); Writeln(a.Pairwise.Where(x->x[0]. IsEven and x[1].IsOdd and (x[1]>x[0])).Count); end.
Тестовое решение: n= 15 707 351 221 748 296 205 182 714 849 76 281 53 354 46 217 Минимальный четный, делящийся на три: 354 Количество элементов с четностью, как у их места: 9 Число, сумма цифр которого наибольшая: 849 Искомое количество пар: 3
Я так понял, должен запуститься цикл и во время итерации при каждом проходе он должен выводить с новой строки то кол-во раз, сколько он выполнился.
var i: integer; {единственная переменная, которая нужна - счетчик} begin for i:=0 to 4 do {или нужное кол-во вместо 4} writeln(i); end.
Писал без отступов, но здесь и так пара строк. Программа полностью рабочая, но учтите, что счет ведется от 0 и цикл в примере повторится не 4, а 5 раз. На выходе будет: 0 1 2 3 4
Если хотите начинать с достаточно сменить значение с 0 на 1.
ответ: Г) Системные, прикладные и системное программирование