Var
k, n: integer;
begin
k := 0;
n := 3;
repeat
k := k + 1;
n := n + 7;
until n > 366;
writeln(k);
end.
Ответ 52
<h2>Уточнение</h2>
Если в выражении z:= (z + x/2)/2 всё-таки сначала высчитывается (z + x), а потом делится на 4, то ответ будет другой.
Но также влияет на ответ то, какой тип у x и z. Если они оба int, то дробная часть отбрасывается и в ответе получится также, если же тип double или float, то ответ будет другим.
<h2>Ответ</h2>
x = 39
z = 1, i = 0
z = (z + x/2)/2 = (1 + 39/2)/2 = 10.25
i = 0 + 1 = 1
1 < 4 - да
...
z = (10.25 + 39/2)/2 = 14.87500
i = 2
2 < 4 - да
...
z = (14.87500 + 39/2)/2 = 17.1875
i = 3
3 < 4 - да
...
z = (17.1875 + 39/2)/2 = 18.34375
i = 4
4 < 4 нет
<h3>z = 18.34375</h3>
0 так как это число вообще без нулей
1)
Program n1;
var a: array[1..10] of integer;
i,sum: integer;
begin
randomize;
sum:=0;
writeln('исходный массив:');
for i:=1 to 10 do
begin
a[i]:=random(20)-10;
write(a[i],' ');
if a[i]<0 then sum:=sum+a[i];
end;
writeln;
writeln('сумма: ',sum);
end.
2)
Program n2;
var a: array[1..10] of integer;
i,k: integer;
begin
randomize;
k:=0;
writeln('исходный массив:');
for i:=1 to 10 do
begin
a[i]:=random(20)-10;
write(a[i],' ');
end;
writeln;
write('номера дел на 5: ');
for i:=1 to 10 do if a[i] mod 5=0 then write(i,' ');
end.
К - 1000
L - 1001
M - 1010
N - 1011
KMLN - 1000101010011011(2)=105233(8)