Программа формирует новый массив со смещением в лево
Program sector;
const
n=10;
var
a,b:array [1..n,1..n] of integer;
z:real;
i,j,k: byte;
begin
randomize;
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=random (40);
a[i,j]:=a[i,j]-20;
write(a[i,j]:4);
end;
writeln;
end;
z:=0;
for i:=1 to n do
for j:=1 to i do
z:=z+a[i,j];
z:=z/(n*n);
writeln('srednee = ',z);
for i:=1 to n do begin
k:=1;
for j:=1 to n do
if a[i,j] > z then begin
b[i,k]:=a[i,j];
write(b[i,k]:4);
k:=k+1;
end;
writeln;
end;
readln;
end.
В общем, не серчай на качество фотографий
Надеюсь, что общий принцип ты понял
1. Линейный - действия в прямоугольнике
2. С Ветвлением - действия в прямоугольнике, вопрос(условие) в ромбе
3. Цикл - действия в прямоугольнике, условие "Хватит на покупку хлеба?" в ромбе, отрицательная ветвь НЕТ идет вниз к действию "Выпросить у матери или продать почку ради накопления средств на покупку хлеба" в прямоугольнике, от него стрелка идет к действию "Выполнить подсчёт", т.к. после того как ты выпросил деньги у мамки ты подсчитываешь их и идешь снова в условие, если денег хватает (ветвь ДА), то продолжаешь те же самые действия, то есть выходишь на улицу, идешь в магазин и т.д.
1) 10101-1110=111₂
2) 111₂=2²*1+2*1+2⁰*1=4+2+1=7₁₀
<u>// PascalABC.NET 3.4, сборка 1766 от 25.08.2018
</u>
begin
var a := new HashSet<integer>(ReadArrInteger('Множество A ->', ReadInteger('Размер множества A =')));
var b := new HashSet<integer>(ReadArrInteger('Множество B ->', ReadInteger('Размер множества B =')));
a.Except(b).Print; Println(' - A\B');
b.Except(a).Print; Println(' - B\A');
a.Intersect(b).Print; Println(' - пересечение A и B');
a.Union(b).Print; Println(' - объединение A и B');
end.
<u>Пример ввода/вывода в приложении.</u>
А) <span>0,00375*10^3 = 3,75
б) </span><span>1,234*10^(-2) = 0,01234
в) </span><span>5,737*10^(-2) = 0,05737</span>