Вопрос:

2. Какие ошибки допущены в программе? ```python print (Введите число а) a = int(input()) if a >= 0: if a 0: a = 18 else a += 1 else: a= 6 print(a) input ``` Найдите все ошибки и исправьте их. Опишите на естественном языке, с помощью формулы или блок-схемы алгоритм преобразования исходных данных, используемый в данной программе. Определите выходные данные при следующих исходных данных: a) -10 б) 0 в) 10

Смотреть решения всех заданий с листа

Ответ:

Ошибки в программе: 1. `print (Введите число а)` - в Python 3 функция `print` требует круглые скобки для аргументов: `print("Введите число а")` 2. `a = int(input())` - здесь все верно, считываем число, введенное пользователем, и преобразуем его в целое число. 3. `if a >= 0:` - проверка, является ли число неотрицательным. 4. `if a 0:` - Второй `if` должен проверять равенство нулю, а не сравнивать `a` с нулем. Исправлено на `if a == 0:` 5. `a= 6` - отсутствует оператор присваивания `a -= 6`. 6. `input` - Эта строка не нужна. `input()` без аргументов просто ждет ввода от пользователя, но ничего с ним не делает. Ее следует удалить. Исправленный код: python print("Введите число а") a = int(input()) if a >= 0: if a == 0: a = 18 else: a += 1 else: a -= 6 print(a) Описание алгоритма: 1. Программа запрашивает у пользователя ввод целого числа `a`. 2. Если `a` больше или равно 0, то: * Если `a` равно 0, то `a` присваивается значение 18. * Иначе (если `a` больше 0), к `a` прибавляется 1. 3. Иначе (если `a` меньше 0), из `a` вычитается 6. 4. Программа выводит значение `a`. Определим выходные данные для следующих входных данных: a) a = -10: Так как -10 < 0, выполняется ветка `else`: `a = a - 6 = -10 - 6 = -16` Ответ: -16 б) a = 0: Так как 0 >= 0, выполняется первая ветка `if`. Внутри нее выполняется `if a == 0`. `a` присваивается значение 18. Ответ: 18 в) a = 10: Так как 10 >= 0, выполняется первая ветка `if`. Внутри нее `if a == 0` не выполняется, поэтому выполняется `else`: `a = a + 1 = 10 + 1 = 11` Ответ: 11
ГДЗ по фото 📸

Похожие