Определите, что будет выведено на экран после выполнения следующего алгоритма: var s:integer; k:real;
begin
s := 25;
if s mod 2 <> 0 then
begin
s := s – 1;
k := s / 2;
end
else k:= s;
writeln (k)
end.

v201612 v201612    1   26.01.2021 10:09    22

Ответы
ольга2444 ольга2444  25.02.2021 10:15

будет выведено значение k, равное 24

Объяснение:

изначально s будет равно 25, функция mod - остаток от деления

здесь у нас цикл с условием выполнения, если s будет делиться на 2 без остатка (т.е. остаток будет равен нулю)

в первом случае (когда s=25) у нас получается остаток 1, идем по циклу, получаем s=24 (т.к. s присваивается значение s-1, т.е. 25-1=24) и k=s/2=24/2=12

далее если идти по циклу с s=24, получаем остаток 0 (24/2=12 - целое число без остатка)

по условию цикла получаем k=24 (если остаток 0, то значение s присваиваем k)

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