Сделать блок-схему для этого кода : var a: array [1..10] of integer; i: integer; max: byte; counter: integer; begin max: =0; for i: =1 to 10 do begin a[i]: =random(15); write(a[i], ' '); end; writeln; for i: =1 to 10 do if a[i] > max then begin max: =a[i]; counter: =i; end; writeln('максимальный порядок массива: ', max); writeln('его порядковый номер: ', counter); end.
у нас он N клеточек в высоту, значит всего в каждом столбике N+1 узел;
у нас он М клеточек в ширину, значит всего в каждой строчке М+1 узел.
Значит всего узлов (N+1)*(М+1).
Чтобы определьть прямоугольник, надо определить два узла в которых будут противоположные углы:
первый узел мы можем выбрать (N+1)*(М
второй узел мы можем выбрать N*М мы не можем выбрать тот столбик и тот ряд, в котором у нас стоит первый узел).
Тоэсть всего выбрать (N+1)*(М+1)*N*М, но это не так.
Рассмотрим весь лист как выбраный прямоугольник.
Пусть мы его выбрали так:
(0; 0), (N+1; М+1).
Этот же прямоугольник мы считали, когда плучали с такими координатами:
1) (N+1; М+1), (0; 0).
2) (N+1; 0), (0; М+1).
3) (0; М+1), (N+1; 0).
И так с каждым прямоугольником, тоэсть каждый прямоугольник мы считаем 4 раза, тоэсть конечная формула такова:
(N+1)*(М+1)*N*М / 4.
Осталось составить прогрмму, которая будет это вичислять.
С++:
#include <iostream>using namespace std;int main()
{
int N, M, k;
cin >> N >> M;
k = (N+1)*(M+1)*N*M / 4;
cout << k << endl;
return 0;
}
Pascal:
program Znanija;
var N, M, k:integer;
begin
read(N);
read(M);
k:=((N+1)*(M+1)*N*M) div 4;
writeln();
writeln(k);
end.
var x, i: integer;
var c : array[1..31] of boolean;
begin
c := 0;
for i:= 1 to 31 do c[i] := false;
for i := 1 to 31 do begin
readln(x); if (x = 0) then c[i] := true;
end;
writeln('В следующие дни не было осадков: ');
for i:= 1 to 31 do if (c[i]) then writeln(c[i]);
readln(i);
end.
2.
var x,i,n,c: integer;
begin
realn(n);
for i:= 1 to n do
begin
readln(x); if (x < 0) then c := c + x;
end;
writeln('ответ: '); write(c);
readln(x);
end.
P.S. На паскале не писал давно. Код не компилировал (ибо его сюда копипастить без последствий нельзя.), так что могут быть незначительные ошибки. + сразу говорю (как программист с некоторым опытом и будучи уже не школьником) - код го*но. Так никто не делает, так никто не пишет, но для "школьного паскаля" достаточно