// PascalABC.NET 3.0, сборка 1073 const nn=30; mm=30; var a:array[1..mm,1..nn] of integer; m,n,i,j,k,s:integer; begin Writeln('Введите число строк и столбцов массива: '); Read(m,n); Randomize; Writeln('*** Исходный массив ***'); k:=0; for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=Random(51)-25; Write(a[i,j]:4); if Odd(a[i,j]) then Inc(k) end; Writeln end; if k>5 then begin Writeln('Средние арифметические отрицательных элементов по строкам'); for i:=1 to m do begin s:=0; k:=0; for j:=1 to n do if a[i,j]<0 then begin Inc(k); s:=s+a[i,j] end; if k>0 then Writeln(s/k:9:5) else Writeln(' 0.00000'); end end else begin Writeln('*** Результирующий массив ***'); for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=2*a[i,j]; Write(a[i,j]:4) end; Writeln end end end.
Первая команда "ПОКА нашлось (555) ИЛИ нашлось (333)" проверяет, есть ли в строке подстрока "555" или "333". Так как в нашей исходной строке только пятёрки, ни одну из этих подстрок найти нельзя. Поэтому мы переходим к следующей команде.
Затем идёт условие "ЕСЛИ нашлось (555)". Поскольку подстроки "555" в нашей строке нет, мы пропускаем выполнение команды "заменить (555, 3)" и переходим к следующей команде.
Следующая команда "ИНАЧЕ заменить (333, 5)" также не выполняется, так как подстроки "333" в строке нет.
Таким образом, мы доходим до конца программы и не выполнили ни одну замену.
Следовательно, строка осталась без изменений: 5555555555... (200 пятёрок).
Теперь остаётся вычислить сумму цифр в этой строке. Поскольку все символы в строке - это пятёрки (цифра 5), сумма цифр составит 200 * 5 = 1000.
Итак, сумма цифр в строке после обработки по данной программе равна 1000.
begin write(seqgen(11,x->power(2,x)).Sum); end.