var a: array [1..20] of integer;
min,max,i,n: integer;
begin
write('n = (<= 20): ');
read(n);
writeln();
for i:= 1 to n do
begin
a[i]:= random(50)-25;
write(a[i]:4);
end;
min:= a[1];
max:= a[1];
for i:= 1 to n do
begin
if min < a[i] then
begin
min:= a[i];
end;
end;
for i:= 1 to n do
begin
if max > a[i] then
begin
max:= a[i];
end;
end;
writeln();
writeln('min = ',min);
writeln('max = ',max);
end.
Цикл while i > 1 do begin означает что он будет выполняться до тех пор, пока i > 1. i изначально равно 7, и в конце каждого выполнения число уменьшается на единицу (i:=i-1). i div 2 означает деление числа на 2 с целым остатком. Исходя из вышесказанного имеем:
(Каждое выполнение цикла буду обозначать как №)
№1: 7>1 (Истина)
S:=0+3=3
i=6
№2: 6>1 (Истина)
S:=3+3=6
i:=5
№3: 5>1 (Истина)
S:=6+2=8
i:=4
№4: 4>1 (Истина)
S:=8+2=10
i:=3
№5: 3>1 (Истина)
S:=10+1=11
i:=2
№6: 2>1 (Истина)
S:=11+1=12
i:=1
№7: 1>1 (Ложь)
Вывод числа S со значением 12.
ответ: 12.
Поделитесь своими знаниями, ответьте на вопрос:
Посмотреть в окно если идет дождь , то взять зонт и обуть сапоги .иначе обуть кроссовки
ответ в виде программы.