Задача Задача №907367
А
А
Привет! Давай разберёмся с этим примером.
В коде, который ты прислал, есть следующие строки:
y := 5;
x := y - 2;
if (x > y) and (x mod 2 = 0) then writeln(y++)
else writeln(x + y);
Давай шаг за шагом посмотрим, что делает каждая строчка:
y := 5;- переменнойyприсваивается значение 5.x := y - 2;- переменнойxприсваивается значениеyминус 2, то есть 5 - 2 = 3.
Теперь рассмотрим условие if:
if (x > y) and (x mod 2 = 0) then ... else ...;- условие состоит из двух частей:(x > y)- проверяет, больше лиxчемy. На данный момент это не так, так какx = 3иy = 5.(x mod 2 = 0)- проверяет, делится лиxна 2 без остатка, что также неверно дляx = 3.
Поскольку первая часть условия неверна (x не больше y), не говоря уже о второй части, весь блок then пропускается, и выполняется блок else:
writeln(x + y);- выводится суммаxиy, то есть 3 + 5 = 8.
Таким образом, на экран будет выведено число 8.
