Ребят если можете, то и объясните


Ребят если можете, то и объясните

Катерина26121 Катерина26121    1   09.01.2021 20:36    0

Ответы
mkruglik130 mkruglik130  08.02.2021 20:47

1. S = 4950

program z1;

var i,S:integer;

begin

S:=0;

i:=1;

while i<100 do

begin

S:=S+i;

i:=i+1

end;

writeln(S)

end.

2. S = 914,5

program z2;

var i,S:real;

begin

S:=0;

i:=1;

while i<=30 do

begin

S:=S+i;

i:=i+0.5

end;

writeln(S)

end.

3. P = 10321920

program z3;

var i,P:integer;

begin

P:=1;

for i:=2 to 16 do if i mod 2 = 0 then P:=P*i;

writeln(P)

end.

Объяснение:

1. Переменные целые, задаем начальное значение переменных, цикл пока: считаем сумму, увеличиваем переменную на 1, вывод.

2. Переменные вещественные, задаем начальное значение переменных, цикл пока: считаем сумму, увеличиваем переменную на 0,5, вывод.

3. Переменные целые, задаем начальное значение переменной, цикл для: если переменная-счётчик соответствует условию, то считаем произведение, переменная-счётчик автоматически увеличивается на 1, вывод.

ПОКАЗАТЬ ОТВЕТЫ
xXEliteXx xXEliteXx  08.02.2021 20:47

t:=1;

S:=1;

while t<100 do

begin

t:=t+1; //+1 это шаг переменной.

S:=S+t;

end;

writeln(S);

//та-же задача, только шаг 0.5 и взятая с неба переменная t изменяется до 30-ти

t:=1;

S:=1;

while t<31 do

begin

t:=t+0.5;

S:=S+t;

end;

writeln(S);

//стоит знать что стандартно в паскале цикл фор автоматически каждый шаг цикла увеличивает переменную условия на 1

//У нас шаг должен быть 2, значит в конце каждой итерации прибавляем к шаговой переменной еще +1

S:=1;

for t:=2 to 16 do

begin

S:=S*t;

t:=t+1;

end;

writeln(S);

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика