"Информатика", Семакин И.Г., Залогова Л.А., Русаков С.В., Шестакова Л.В.
Диалог с компьютером — это обмен сообщениями между пользователем и программой. Программа задаёт вопросы, получает введённые данные, обрабатывает их и выводит понятный ответ. Для организации такого взаимодействия используют оператор INPUT, который принимает данные, и PRINT, который показывает текст или результат. Главное — соблюдать порядок действий: запросить нужные значения, сохранить их в переменных, выполнить вычисления и объяснить полученный ответ.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Диалог с компьютером — последовательный обмен сообщениями, при котором программа запрашивает данные у пользователя, получает их и сообщает результат. Такой способ нужен, чтобы одна программа могла работать с разными исходными данными, введёнными человеком.
Оператор ввода INPUT — команда, которая приостанавливает выполнение программы, выводит запрос и присваивает введённое пользователем значение переменной. Благодаря INPUT программа получает исходные данные не заранее, а непосредственно во время работы.
Оператор вывода PRINT — команда, которая выводит на экран текст, значения переменных или результаты вычислений. С его помощью программа сообщает пользователю, что получилось и как следует понимать ответ.
Запрос пользователю — текст, поясняющий, какие данные нужно ввести и в каком виде. Он нужен для понятного общения: человек должен отличать просьбу ввести имя от просьбы ввести число или количество.
Диалоговая программа отличается от программы с заранее заданными данными тем, что получает исходные значения во время выполнения. Поэтому один и тот же алгоритм можно применять к разным числам, именам или другим сведениям. Пользователю не требуется менять исходный текст программы при каждом новом запуске.
Оператор INPUT связывает введённое значение с переменной, потому что вычислениям нужно откуда-то получать исходные данные. Переменная становится именованным местом хранения: например, в ней можно сохранить цену или количество товара. Введённые данные должны соответствовать назначению переменной, иначе последующее действие окажется неверным.
Запрос перед вводом нужен для устранения неопределённости. Если на экране просто мигает курсор, пользователь не знает, какое значение ожидается и сколько сведений вводить. Точная подсказка направляет действия человека и уменьшает вероятность ошибки.
PRINT выводит не только готовую фразу, но и содержимое переменных. Это позволяет показать результат вычисления, который заранее неизвестен и зависит от введённых данных. Поясняющий текст рядом со значением превращает отдельное число в понятный ответ.
Диалог строится в определённом порядке, поскольку результат нельзя вычислить до получения исходных значений. Сначала программа показывает запрос и ждёт ввода, затем выполняет необходимые действия и только после этого выводит ответ. Нарушение порядка приводит к использованию пустых, старых или неподходящих данных.
| Оператор | Назначение | Что происходит при выполнении | Пример использования |
|---|---|---|---|
| Вывод данных | На экран выводятся текст, значение переменной или результат | Показать пользователю ответ программы |
В таблице указано, какое действие выполняет оператор и что видит пользователь. При чтении примера нужно определить, выводится ли готовый текст, значение переменной или результат вычисления. Для полного диалога PRINT обычно используют вместе с INPUT: один оператор сообщает, что ввести, а другой показывает ответ.
Условие. Нужно запросить имя пользователя и вывести приветствие с этим именем. Имя является текстовым значением, поэтому его сохраняют в отдельной переменной. Сначала программа должна объяснить, что требуется ввести.
Ответ. Получается диалоговая программа, которая использует введённое имя в сообщении, например: «Здравствуйте, Анна!».
Условие. Программа должна получить два числа и вывести их сумму. Значения нужно хранить в разных переменных, чтобы не потерять ни одно из них. Затем вычисляется выражение a + b.
Ответ. Если введены 7 и 5, программа должна сообщить: «Сумма равна 12». При других числах порядок действий остаётся тем же.
Условие. Требуется найти стоимость покупки по цене товара и количеству. Цена и количество вводятся отдельно, потому что это разные исходные данные. Итог вычисляется умножением: стоимость = цена · количество.
Ответ. При цене 80 и количестве 3 результатом будет 240. Такой порядок гарантирует, что вычисление использует оба введённых значения, а сообщение объясняет смысл числа.
Забывают вывести запрос перед вводом, поэтому пользователь не понимает, что требуется набрать. Так происходит, когда автор программы думает только о командах, но не о человеке, который будет её запускать. Проверьте программу глазами пользователя: перед каждым INPUT должна быть ясная подсказка.
Переменную пытаются использовать до ввода значения, и в вычисление попадают неопределённые или неподходящие данные. Ошибка возникает из-за нарушения последовательности действий. Проверьте, что каждый используемый идентификатор уже получил значение через INPUT или присваивание.
Вместо числа вводят текст, например слово вместо количества, поэтому арифметическая операция не выполняется корректно. Пользователь может ошибиться, если запрос недостаточно точен. Уточните в подсказке вид данных и проверьте пример ввода.
Выводят только значение без пояснения, и отдельное число становится непонятным. Обычно это происходит, когда забывают, что результат должен быть сообщением для человека. Проверьте экран после запуска: рядом с ответом должно быть указано, что именно вычислено.
Для программирования диалога нужно знать, что такое переменная, как присваивать ей значение и как выполнять арифметические операции. INPUT помещает данные в переменные, а выражения используют их для вычислений. Поэтому без этих базовых действий диалоговая программа не сможет обработать ввод.
Диалоговый ввод и вывод применяются в программах, которые решают задачи по запросам пользователя. Благодаря им алгоритм становится универсальнее: он работает не с одним заранее записанным примером, а с текущими данными. Такой подход используется в вычислителях, анкетах и учебных программах.
Чем оператор INPUT отличается от оператора PRINT?
INPUT получает данные от пользователя и записывает их в переменную. PRINT, наоборот, выводит на экран текст, значения переменных или результаты вычислений.
Зачем выводить запрос перед вводом данных?
Запрос объясняет пользователю, что именно нужно ввести. Без него человек может не понять назначение ввода или указать данные в неподходящем виде.
Можно ли в одной программе использовать несколько операторов ввода?
Да, в одной программе можно использовать любое необходимое количество операторов INPUT. Например, отдельно вводят цену и количество товара.
Что произойдёт, если ввести данные не того типа?
Программа может сообщить об ошибке и остановить выполнение. Например, текст нельзя напрямую использовать в арифметическом вычислении вместо числа.
Как вывести на экран и текст, и значение переменной?
В операторе PRINT указывают поясняющий текст и переменную. Тогда на экране появится сообщение вместе с её текущим значением.
§ 14. Программирование диалога с компьютером