Оператор INPUT
Оператор INPUT
Оператор input обеспечивает запрос данных, необходимых для выполнения программы, непосредственно у пользователя, которые тот вводит прямо с клавиатуры. Это дает возможность вести диалог с пользователем и решать задачу, исходя из его конкретных запросов.
Работает оператор input следующим образом. В том месте программы, где вы хотите запросить у пользователя какие-то данные, вы должны написать input, а после него через пробел — переменную или несколько переменных, в которые будут занесены вводимые данные. Например:
CLS:?"Каков Ваш рост в см?"
INPUT R
?"Ваш рост превышает 1 м на ";R-100;"см"
Очень запоминается следующий пример диалоговой программы, которая запрашивает у пользователя имя, а затем здоровается с ним:
CLS:?"KaK вас зовут?" ';
INPUT NAME$ Rem Знак $ указывает на то, что ожидается вьод Rem не числовой, а символьной информации
? "Здравствуйте"; NAME$
Для тех, кто в дальнейшем планирует изучать язык Паскаль, пожалуй, стоит запомнить именно такую конструкцию оператора input: сначала вывод сообщения оператором print, а затем запрос данных. Но Бейсик в этом смысле облегчает работу и позволяет объединить два действия в одном. Тогда обе вышеприведенные программы обретут иной вид.
Про средний рост:
CLS:INPUT "Каков Ваш рост в cm";R
?"Ваш рост превышает 1 м Ha";R-100; "см"
Про "Здравствуйте, Ваня!"
CLS: INPUT "Как вас 3OByT";NAME$
? "Здравствуйте"; NAME$
То есть в операторе input сначала можно разместить подсказку (но только одну), а затем после точки с запятой указать имя запрашиваемой переменной, или, если их несколько, перечислить через запятую.
Кроме того, обратите внимание, что в модифицированных вариантах программ в вопросах опущены знаки вопросов, т. к. оператор input при работе сам выставляет знак вопроса.
Рассмотрим примеры.
Далее приведена программа, запрашивающая длины катетов, а затем вычисляющая длину гипотенузы прямоугольного треугольника.
CLS:INPUT "Введите длины двух катетов";А,В
C=SQR(A"2+B"2)
?"Длина гипотенузы =";С
Если вы случайно ввели меньше или больше данных, чем было необходимо, и нажали клавишу <Enter>, то появится сообщение "Ввод сначала". Это означает, что вы спокойно, без паники должны осуществить ввод данных заново.
Перед упражнениями приведем еще один пример программы с оператором input:
CLS: INPUT "Как вас зовут";NAME$
? "Здравствуйте,"; NAME$
INPUT "Введите год вашего рождения, а затем текущий год ";YEARl,YEAR2 ! <.
R=YEAR2-YEAR1
?"Вам около";R; "лет"
Запустим программу и проследим ее работу (выделенные полужирным символы должны набираться пользователем в процессе работы программы).
Rem Нажмите <Shift>+<F5>
Как вас зовут? Ваня Rem После ввода нажмите клавишу <Enter>
Здравствуйте, Ваня
Введите год вашего рождения, а затем текущий год? 1986, 2000
Rein После ввода нажмите клавишу <Enter>
Вам около 14 лет .
Несколько маленьких упражнений. < '¦¦'¦'"' ''¦'".
70. Напишите программу, запрашивающую ваш год рождений, год рождения вашей мамы и печатающую/; Во сколько лет мама вас родила. '
71. Напишите дружественную по отношению к пользователю программу. Пусть она обращается к вам по имени, а затем предложит последовательно ввести прилагательное, существительное, наречие и глагол, чтобы в результате вывести на экран несложную фразу с использованием введенных слов.
72. Напишите программу, запрашивающую три стороны треугольника А, В, С и вычисляющую его площадь по формуле Герона:

73. Напишите программу, запрашивающую высоту дома h (в метрах), ускорение свободного падения g, и вычисляющую время падения кирпича t (в секундах) с крыши этого дома по формуле:

Замечание
Помните, что в самой программе вы не указываете ни конкретных имен, ни конкретных слов, а лишь имена переменных, в которых они будут храниться после ввода с клавиатуры.