До скласти блок-схему фрагмента алгоритму з вкладеними розгалуженнями, з яких зовнішнє є неповним, а внутрішнє-повним. Поясніть виконання складеного фрагмента.
1) Program n1; const n=5; var a: array [1..n] of integer; i: integer; begin for i:=1 to n do readln(a[i]); for i:=1 to n do if( i mod 2=0) then a[i]:=0 else a[i]:=1; for i:=1 to n do writeln(a[i]); end. 2) Program n2; const n=25; var a: array [1..n] of integer; i,k: integer; begin randomize; for i:=1 to n do begin a[i]:=random(5)+1; if a[i]<3 then k:=k+1; end; writeln(k); end. 3) Program n3; const n=5; var a: array [1..n] of integer; i,S: integer; begin S:=0; for i:=1 to n do readln(a[i]); for i:=1 to n do if (a[i]<0) then S:=S+a[i]; writeln(S); end.
// PascalABC.NET 3.2, сборка 1379 от 21.01.2017 // Внимание! Если программа не работает, обновите версию!
begin var m:=ReadInteger('Количество строк в матрице:'); var n:=ReadInteger('Количество столбцов в матрице:'); var k,p:integer; Write('Строки с какими номерами поменять? '); Read(k,p); Writeln('*** Исходная матрица [',m,',',n,'] ***'); var a:=MatrRandom(m,n,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); a.SwapRows(k-1,p-1); Writeln('*** Матрица-результат ***'); a.Println(4) end.
Program n1;
const n=5;
var a: array [1..n] of integer;
i: integer;
begin
for i:=1 to n do readln(a[i]);
for i:=1 to n do if( i mod 2=0) then a[i]:=0
else a[i]:=1;
for i:=1 to n do writeln(a[i]);
end.
2)
Program n2;
const n=25;
var a: array [1..n] of integer;
i,k: integer;
begin
randomize;
for i:=1 to n do
begin
a[i]:=random(5)+1;
if a[i]<3 then k:=k+1;
end;
writeln(k);
end.
3)
Program n3;
const n=5;
var a: array [1..n] of integer;
i,S: integer;
begin
S:=0;
for i:=1 to n do readln(a[i]);
for i:=1 to n do if (a[i]<0) then S:=S+a[i];
writeln(S);
end.
// Внимание! Если программа не работает, обновите версию!
begin
var m:=ReadInteger('Количество строк в матрице:');
var n:=ReadInteger('Количество столбцов в матрице:');
var k,p:integer;
Write('Строки с какими номерами поменять? '); Read(k,p);
Writeln('*** Исходная матрица [',m,',',n,'] ***');
var a:=MatrRandom(m,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
a.SwapRows(k-1,p-1);
Writeln('*** Матрица-результат ***');
a.Println(4)
end.
Пример
Количество строк в матрице: 5
Количество столбцов в матрице: 8
Строки с какими номерами поменять? 2 5
*** Исходная матрица [5,8] ***
-79 16 -87 -77 -93 94 -21 -16
-63 -35 58 -52 -89 -54 -32 -65
16 23 72 99 39 -46 66 -80
-85 62 -29 -14 95 69 -58 -5
-70 -47 -25 -48 33 42 -82 -12
*** Матрица-результат ***
-79 16 -87 -77 -93 94 -21 -16
-70 -47 -25 -48 33 42 -82 -12
16 23 72 99 39 -46 66 -80
-85 62 -29 -14 95 69 -58 -5
-63 -35 58 -52 -89 -54 -32 -65