вот std алгоритм заключается в том что у нас три переменных и мы после нахождения максимума все переменные сдвигаем назад то есть m1 становится m2, m2 становится m3 а m1 присваивается новый максимум и так же тут случаи когда m2 или m3 больше старых но мешьше m1 он тогда просто меняет значение именно той переменной которой он больше
1)
var mas:array[1..7] of integer;
i:integer;
begin
writeln('Введите 7 целых чисел:');
for i:=1 to 7 do
begin
readln(mas[i]);
if(mas[i] mod 2 <>0) then mas[i]:=mas[i]*10;
end;
writeln('Изменённый массив:',mas);
end.
2) var mas:array[1..9] of integer;
i,b:integer;
begin
writeln('Введите 9 целых чисел:');
for i:=1 to 9 do
begin
readln(mas[i]);
if(mas[i] <0) then b:=b+mas[i];
end;
writeln('Сумма отрицательных элементов= :',b);
end.
3) var mas:array[1..4] of integer;
i,b:integer;
begin
writeln('Введите 4 целые числа:');
b:=1;
for i:=1 to 4 do
begin
readln(mas[i]);
b:=b*mas[i];
end;
writeln('Произведение чисел= ',b);
end.
m1=0
m2=0
m3=0
x=10
while x!=0:
x=int(input())#вводим число
if m1<x:
m3=m2
m2=m1
m1=x
elif x>m2 and x>m3 and x<m1:
m3=m2
m2=x
elif x<m2 and x<m1 and x>m3:
m3=x
print(m1,m2,m3,sep=" ")
вот std алгоритм заключается в том что у нас три переменных и мы после нахождения максимума все переменные сдвигаем назад то есть m1 становится m2, m2 становится m3 а m1 присваивается новый максимум и так же тут случаи когда m2 или m3 больше старых но мешьше m1 он тогда просто меняет значение именно той переменной которой он больше