Упр.207 ГДЗ Рабочая тетрадь Босова 8 класс 2024 (Информатика)
Текст программы приведён на двух языках программирования:
Паскаль
var x, y, z: real;
begin
writeln(‘Введите три числа’);
readln(x, y, z);
if (x <= y) and (y <= z) then
begin
x := 2 * x;
y := 2 * y;
z := 2 * z
end
else
begin
x := x — 2;
y := y — 2;
z := z — 2
end;
writeln(x, ‘ ‘, y, ‘ ‘, z)
end.
Python
print(‘Введите три числа:’)
x, y, z = map(int, input().split())
if x <= y <= z:
x *= 2
y *= 2
z *= 2
else:
x -= 2
y -= 2
z -= 2
print(x, y, z)
- Составьте блок-схему, соответствующую программе. Что является результатом работы программы?
В программе сначала вводятся три числа $$x$$, $$y$$, $$z$$. Затем проверяется условие $$x \le y \land y \le z$$.
Если условие истинно, то все три числа удваиваются:
$$x := 2x,\quad y := 2y,\quad z := 2z$$
Если условие ложно, то каждое число уменьшается на 2:
$$x := x — 2,\quad y := y — 2,\quad z := z — 2$$
Блок-схема должна содержать:
- ввод $$x, y, z$$;
- проверку условия $$x \le y \land y \le z$$;
- ветвь «да» с действиями $$x := 2x$$, $$y := 2y$$, $$z := 2z$$;
- ветвь «нет» с действиями $$x := x — 2$$, $$y := y — 2$$, $$z := z — 2$$;
- вывод $$x, y, z$$.
Итак, результат работы программы зависит от порядка введённых чисел: если они не убывают, то каждое число удваивается, иначе каждое уменьшается на 2.
Ответ
Если $$x \le y \le z$$, то программа выводит $$2x,\ 2y,\ 2z$$. Иначе выводит $$x-2,\ y-2,\ z-2$$.




