Суть программы в том, чтобы пройти цикл, в условии которого спрашивается, является ли разность переменных n и s больше нуля. В этом цикле каждый раз происходит увеличение s на 20, а n на 15. Давай пройдем этот цикл:
s = 127, n = 250
n - s = 250 - 127 > 0, проходим цикл
s = 127 + 20 = 147, n = 250 + 15 = 265
Так цикл будет повторяться до тех пор (а это событие произойдёт, поскольку к s прибавляется больше, чем к n, так что переменная s в какой-то момент перегонит n), пока s не станет больше n - тогда разность s и n будет меньше нуля и цикл уже не выполнится. Я так понял, нужно вывести s, при котором цикл уже работать не будет. Здесь ничего не остаётся, кроме как считать. Я этого здесь делать не буду, потому что всё даже не поместится. Я лишь выполнил эту программу. Ответом будет число s = 627. Прошло всего 25 циклов.
Const
m = 10;
var
a: array[1..m+1] of integer;
i, k: integer;
begin
write ('Исходный массив: ');
for i := 1 to m do
begin
a[i] := random(100);
write (a[i],'; ');
end;
writeln;
write('Введите число: ');
readln(k);
for i:=m+1 downto 1 do
begin
a[i]:=a[i-1];
if a[i] mod 2=0 then
begin
a[i-1]:=k;
break;
end;
end;
write('Измененный массив: ');
for i := 1 to m+1 do
write (a[i],'; ');
<span>end.</span>
Const n=10;
Var a: array [1..n] of integer;
i,min: integer;
Begin
For i:=1 to n do
a[i]:=Random(21)-10;
writeln ('Исходный массив: ');
for i:=1 to n do
write (a[i],' ');
writeln;
min:=a[1];
for i:=2 to n do
if a[i]<min then
min:=a[i];
writeln ('Минимальный элемент = ',min);
for i:=1 to n do
if a[i]<0 then
a[i]:=a[i]*min;
writeln ('Преобразованный массив:');
for i:=1 to n do
write (a[i], ' ');
end.
Const n=20;
var a:array[1..n] of integer;
i,j,t,i1,i2,x:integer;
begin
Randomize;
Writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=Random(15);
Write(a[i],' ')
end;
Writeln;
for i:=1 to n-1 do
for j:=1 to n-i do
if a[j]>a[j+1] then
begin t:=a[j]; a[j]:=a[j+1]; a[j+1]:=t end;
Writeln('Отсортированный массив:');
for i:=1 to n do Write(a[i],' ');
Writeln;
write('x = '); readln(x);
i1:=1; i2:=n;
repeat
i:=(i1+i2) div 2;
if a[i]<x then i1:=(i1+i2) div 2+1;
if a[i]>x then i2:=(i1+i2) div 2-1;
until (a[i]=x)or(i1>i2);
if a[i]=x then
begin
while (i>0)and(a[i]=x) do i:=i-1;
i:=i+1; j:=i;
while (i<=n)and(a[i]=x) do i:=i+1;
writeln('Число ',x,' встречается ',i-j,' раз(а)');
end
else writeln('Число ',x,' не встречается');
writeln;
end.
Пример:
Исходный массив:
4 13 5 3 14 12 12 8 9 6 3 2 4 4 14 1 12 2 5 9
Отсортированный массив:
1 2 2 3 3 4 4 4 5 5 6 8 9 9 12 12 12 13 14 14
x = 5
Число 5 встречается 2 раз(а)