Определить значение переменной y после работы следующей программы - PascalABC.NET
Формулировка задачи:
Добрый день! Передо мной поставили задачу: Определить значение переменной y после работы следующей программы
По примеру:
Ход решения:
Ответ: y = 7
Я решил так: Ход решения:
дальше не знаю как правильно записать, хоть знаю уже ответ и сделал программу в Паскале. Пожалуйста дорешайте
Решение задачи: «Определить значение переменной y после работы следующей программы»
textual
Листинг программы
var a,b,x,y:integer;
begin
a:=-6;
b:=2-3*a; //=2+18=20
x:=0;
y:=b div 4+1;//5+1=6
//3*(-6)<20 2*(-6)+20>6//оба условия выполняются
if (3*a<b) and (2*a+b>y)then
begin
x:=10; //=10
y:=y+5 //=11
end;
//2*11>20 20>18 первое условие выполняется
if(2*y>b) or (b<x+8) then
begin
x:=x+4;//=14
y:=x+2 //=16
end;
write('y=',y)
end.
Объяснение кода листинга программы
- Объявлены четыре переменные: a, b, x, y типа integer.
- Переменной a присвоено значение -6.
- Переменной b присвоено значение 2 + 18 = 20.
- Переменной x присвоено значение 0.
- Переменной y присвоено значение (20 div 4) + 1 = 5 + 1 = 6.
- Проверяется выполнение двух условий: 3a < b и 2a + b > y.
- Если условия выполняются, то переменной x присваивается значение 10, а переменной y присваивается значение y + 5.
- Проверяется выполнение двух условий: 2*y > b и b < x + 8.
- Если условия выполняются, то переменной x присваивается значение x + 4, а переменной y присваивается значение x + 2.
- Выводится значение переменной y.
- Код завершается.