Помогите, пожалуйста, выполнит задания, связанные с Turbo Pascal:
1) Определить, что будет напечатано в результате работы следующего фрагмента программы:
var k,s:integer;
begin
s:=0;
k:=1;
while k<11 do begin
s:=s+k;
k:=K+1;
end;
write(s);
end.
1.1 Запишите этот же фрагмент с помощью оператора Repeat...until
2) Значения двух массивов A[1..100] и B[1..100] задаются с помощью следующего фрагмента программы:
for n:=1 to 100 do
A[n]:=n-10;
for n:=1 to 100 do
B[n]:=A[n]*n;
Сколько элементов массива B будут иметь положительные значения?
а)10 б)50 в)90 г)100
Ответы
1. Число 55
1.1
var k,s:integer;
begin
s:=0;
k:=1;
repeat
s:=s+k;
k:=K+1;
until k>10;
write(s);
end.
2. в)90
1. Программа суммирует числа от 1 до 10, следовательно в ответе будет сумма: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55.
1.1.
var k,s:integer;
begin
s:=0;
k:=1;
repeat
s:=s+k;
k:=K+1;
until k >10;
write(s);
end.
2. в первом цикле
for n:=1 to 100 do
A[n]:=n-10;
вычисляются элементы массива А по формуле A[n]:=n-10, первые 10 из них будут отрицательные.
во втором цикле
for n:=1 to 100 do
B[n]:=A[n]*n;
вычисляются элементы массива В по формуле B[n]:=A[n]*n, а т.к. первые 10 элементов массива А отрицательные числа, то и 10 первых элементов массива В будут отрицательными, а т.к. в массиве В 100 элементов, то положительных будет 90.