Какими средствами программируется диалог между пользователем и компьютером

Обновлено: 03.07.2024

Если вы исполняли рассмотренные выше программы на компьютере, то почувствовали определенное неудобство при работе с машиной. Во-первых, непонятно, когда машина начинает ожидать ввода данных, какие данные и в каком порядке нужно вводить (это ведь можно и забыть). Во-вторых, результаты получаются в виде чисел на экране, без всяких пояснений их смысла. Ясно, что люди между собой так не общаются.

Любую программу составлять нужно так, чтобы ее исполнение имитировало диалог между компьютером и пользователем в понятной для человека форме.

Прежде чем начать составление программы, нужно продумать сценарий такого диалога.

Например, составим сценарий работы программы, вычисляющей сумму двух целых чисел. На экране компьютера последовательно должны появляться следующие строки (для примера предположим, что будем вводить числа 237 и 658):

Введите первое слагаемое: А = 237
Введите второе слагаемое: В = 658
А + В = 895
Пока!

Здесь курсивом записаны символы, которые выводит компьютер по программе, а прямым жирным шрифтом - символы, вводимые пользователем.

Любой вывод на экран происходит по оператору вывода, записанному в программе.

Следовательно, с помощью оператора вывода на экран выносятся не только результаты решения задачи, но и все элементы диалога со стороны компьютера.

Вот программа, которая реализует наш сценарий:

Program Summa;
var А, В : integer;
begin write ('Введите первое слагаемое: А = ');
readln(A);
write('Введите второе слагаемое: В = ');
readln(В);
writeln;
writeln('A + В = ', А+В) ;
writeln('Пока!')
end.

В этой программе используется возможность включать в список вывода символьные строки, заключенные в апострофы, и арифметические выражения. Выражение А+В сначала вычисляется, а потом полученное число выводится на экран. Конечно, для вычисления суммы можно было написать отдельный оператор присваивания, но можно и так, как в этом примере.

Еще обратите внимание на оператор writeln без списка вывода. Он обеспечивает пропуск строки на экране.

Пример программирования диалога

Компьютерная программа совсем не обязательно должна иметь математическое содержание. Вот пример сценария, судя по которому компьютер выполняет роль электронной няньки, заботящейся о здоровье школьника. Приводятся два варианта развития сценария, в зависимости от ответа ребенка.

Вариант 1:
Ты вчера был болен. Измерь-ка температуру! Сообщи, какая у тебя температура: 36.5
Ты здоров, дружок! Можешь идти в школу.
Желаю успехов!

Вариант 2:
Ты вчера был болен. Измерь-ка температуру!
Сообщи, какая у тебя температура: 37.3
Ты еще болен! Раздевайся и ложись в постель.
Поправляйся, дружок!

Алгоритм этой программы содержит ветвление. Идея алгоритма состоит в том, что значение температуры ребенка сравнивается с величиной нормальной температуры человека: 36,6 °С. И если у ребенка температура выше, то он нездоров. Вот соответствующий алгоритм на АЯ:

алг НЯНЬКА
вещ Т
нач вывод "Ты вчера был болен. Измерь-ка температуру!"
вывод "Сообщи, какая у тебя температура:
ввод(Т)
если Т> 36.6
то вывод "Ты еще болен! Раздевайся и ложись в постель."
вывод "Поправляйся, дружок!"
иначе вывод "Ты здоров, дружок!
Можешь идти в школу."
вывод "Желаю успехов!"
кв
кон

По этому алгоритму получается следующая программа на Паскале:

Program NANNY;
Var T: real;
begin writeln( 'Ты вчера был болен. Измерь-ка температуру! ');
write ( 'Сообщи, какая у тебя температура: ');
readln(T);
if T>36.6 then begin
writeln ( 'Ты еще болен! Раздевайся и ложись в постель. ');
writeln( 'Поправляйся, дружок! ')
end
else begin
writeln('Ты здоров, дружок! Можешь идти в школу. ') ;
writeln( 'Желаю успехов! ')
end
end.

Обратите внимание на два момента: во-первых, перед словом else ни в коем случае нельзя ставить точку с запятой; во-вторых, в записи и при вводе вещественных чисел целая и дробная части числа отделяются десятичной точкой.

Составляя подобную программу, вы сами организуете интерфейс компьютера с пользователем вашей программы. Этот интерфейс обязательно должен быть дружественным. Содержание диалога должно быть понятным и удобным.

1. Что обозначает понятие "диалоговый характер программы"?

2. Какими средствами программируется диалог между пользователем и компьютером?

3. Что обозначает понятие "дружественный интерфейс"?

4. Выполните на компьютере все программы, приведенные в данном параграфе.

5. Постройте алгоритм и составьте программу, по которой будет реализован следующий сценарий: компьютер запрашивает номер дня недели, после ввода компьютер сообщает название этого дня. Например, если ввели 1, то выведется фраза "Это понедельник" и т. д.

Тип урока: урок изучения и первичного закрепления новых знаний.

Цель урока : Формирование навыка решения задач с помощью оператора ветвления.

Задачи: Формировать навыки и умения составления программ с использованием условного оператора.

1. Организационный момент (2 мин). Здравствуйте ребята!

Есть ли отсутствующие на уроке? (Записать, кого нет).

2. Изучение нового материала (20 мин)

Как вы думаете, а можно ли составить программу, в виде диалога между компьютером и пользователем?

Да, действительно, любую программу нужно составлять так, чтобы ее исполнение имитировало диалог в понятной для человека форме. Ведь иногда даже не понятно, когда, какие данные и в каком порядке нужно вводить, это, во-первых. Во-вторых, результаты получаются в виде чисел на экране, без всяких пояснений их смысла.

Открываем тетради записываем число и тему «Программирование диалога с компьютером» .

Но прежде чем начать составление программы, нужно продумать сценарий такого диалога.

Сценарий работы программы - это описание ее общения с пользователем.

Рассмотрим с вами пример составленного сценария работы программы, вычисляющей сумму двух целых чисел.

Введите первое слагаемое: А = 237

Введите второе слагаемое: В = 658

Следовательно, с помощью оператора вывода на экран выносятся не только результаты решения задачи, но и все элементы диалога со стороны компьютера.

Вот программа, которая реализует наш сценарий:

В этой программе используется возможность включать в список вывода символьные строки, заключенные в апострофы, и арифметические выражения.

Еще обратите внимание на оператор writeln без списка вывода. Он обеспечивает пропуск строки на экране.

А сейчас, я дам вам сценарий, судя по которому компьютер выполняет роль няни, заботящейся о здоровье школьника. Ваша задача написать к этому сценарию соответствующий программу на алгоритмическом языке и языке программирования. Приводятся два варианта развития сценария, в зависимости от ответа ребенка. Идея состоит в том, что значение температуры ребенка сравнивается с нормальной температурой человека: 36,6 °С. И если у ребенка температура выше, то он нездоров.

Ну что же, начинаем программу на АЯ. Прежде всего нам нужно указать имя программы. Давайте назовем «Няня». Далее нам нужно ввести переменную. Какую введем? (если нам надо будет указать температуру, логично будет ввести Т). после этого идет непосредственно само тело программы.

Program NANNY;

Var T: real;

writeln ( 'Ты вчера был болен. Измерь-ка температуру! ');

write ( 'Сообщи, какая у тебя температура: ');

if T>36.6 then

writeln ( ' Ты еще болен ! Раздевайся и ложись в постель. ','Поправляйся, дружок!')

If T <=36.6 then

writeln ('Ты здоров, дружок! Можешь идти в школу. ', 'Желаю успехов! ');

3. Закрепление изученного материала (20 мин)

Write ('Как тебя зовут?');

Writeln (' Привет ,', s);

2. Составьте на Паскале программу, которая запрашивает возраст двух детей (Миши и Кати), а затем выводит информацию о том, кто из них старше.

Program two;

WriteLn(' Возраст Миши ');

WriteLn(' Возраст Кати ');

If a>b Then WriteLn(' Миша старше Кати ')

Else If b Катя старше Миши ')

Else If a=b Then WriteLn ('Возраст Кати равен возрасту Миши');

3. Постройте алгоритм и составьте программу, по которой будет реализован следующий сценарий: компьютер запрашивает номер дня недели, после ввода компьютер сообщает название этого дня. Например, если ввели 1, то выведется фраза «Сегодня понедельник» и т.д.

write ('Введите день недели:');

if d=1 then writeln (' Сегодня понедельник ');

if d=2 then writeln (' Сегодня вторник ');

if d=3 then writeln (' Сегодня среда ');

if d=4 then writeln (' Сегодня четверг ');

if d=5 then writeln (' Сегодня пятница ');

if d=6 then writeln (' Сегодня суббота ');

if d=7 then writeln (' Сегодня воскресенье ');

4 . Вычислить площадь трапеции по формуле S = (a+b)·h/2, где a-длина верхнего основания, b – длина нижнего основания, h – высота трапеции. Используйте дружественный диалог компьютера и пользователя.

5 . Составь программу, которая бы по температуре воздуха рекомендовала, что одеть. Примерный сценарий: Введи, пожалуйста, температуру воздуха на улице! Если температура больше нуля, то надень осеннее пальто, иначе одень шубу.

4. (Домашнее задание (3 мин):

Составь программу, по которой компьютер говорил можно ли идти в школу ученику по величине температуры воздуха на улице зимой. Примерный сценарий: Доброе утро! Вчера на улице было очень холодно. Посмотри температуру воздуха сегодня. Сообщи температуру на улице. Если температура меньше -25, то «Можешь ложиться спать. Сегодня холодно. В школу не идём.» иначе «Собирайся в школу, дружок. Желаю успехов!».

§ 38. Программирование диалога с компьютером


Основные темы параграфа:

♦ что такое диалог с компьютером;
♦ пример программирования диалога.

Что такое диалог с компьютером

Если вы исполняли рассмотренные выше программы на компьютере, то почувствовали определенное неудобство при работе с машиной. Во-первых, непонятно, когда машина начинает ожидать ввода данных, какие данные и в каком порядке нужно вводить (это ведь можно и забыть). Во-вторых, результаты получаются в виде чисел на экране, без всяких пояснений их смысла. Ясно, что люди между собой так не общаются.

Любую программу составлять нужно так, чтобы ее исполнение имитировало диалог между компьютером и пользователем в понятной для человека форме.

Прежде чем начать составление программы, нужно продумать сценарий такого диалога.

Например, составим сценарий работы программы, вычисляющей сумму двух целых чисел. На экране компьютера последовательно должны появляться следующие строки (для примера предположим, что будем вводить числа 237 и 658):

Введите первое слагаемое: А = 237
Введите второе слагаемое: В = 658
А + В = 895
Пока!

Здесь курсивом записаны символы, которые выводит компьютер по программе, а прямым жирным шрифтом — символы, вводимые пользователем.

Любой вывод на экран происходит по оператору вывода, записанному в программе.

Следовательно, с помощью оператора вывода на экран выносятся не только результаты решения задачи, но и все элементы диалога со стороны компьютера.

Вот программа, которая реализует наш сценарий:

Informatika 9 219.jpg

В этой программе используется возможность включать в список вывода символьные строки, заключенные в апострофы, и арифметические выражения. Выражение А+B сначала вычисляется, а потом полученное число выводится на экран. Конечно, для вычисления суммы можно было написать отдельный оператор присваивания, но можно и так, как в этом примере.

Еще обратите внимание на оператор writeln без списка вывода. Он обеспечивает пропуск строки на экране.

Пример программирования диалога

Компьютерная программа совсем не обязательно должна иметь математическое содержание. Вот пример сценария, судя по которому компьютер выполняет роль электронной няньки, заботящейся о здоровье школьника. Приводятся два варианта развития сценария, в зависимости от ответа ребенка.

Вариант 1:
Ты вчера был болен. Измерь-ка температуру! Сообщи, какая у тебя температура: 36.5
Ты здоров дружок! Можешь идти в школу. Желаю успехов!

Вариант 2:
Ты вчера был болен. Измерь-ка температуру! Сообщи, какая у тебя температура: 37,3
Ты еще болен! Раздевайся и ложись в постель. Поправляйся, дружок!

Алгоритм этой программы содержит ветвление. Идея алгоритма состоит в том, что значение температуры ребенка сравнивается с величиной нормальной температуры человека: 36,6 0C. И если у ребенка температура выше, то он нездоров. Вот соответствующий алгоритм на АЯ:

Алгоритм

Алгоритм

По этому алгоритму получается следующая программа на Паскале:

Программа на Паскале

Обратите внимание на два момента: во-первых, перед словом else ни в коем случае нельзя ставить точку с запятой; во-вторых, в записи и при вводе вещественных чисел целая и дробная части числа отделяются десятичной точкой.

Составляя подобную программу, вы сами организуете интерфейс компьютера с пользователем вашей программы. Этот интерфейс обязательно должен быть дружественным. Содержание диалога должно быть понятным и удобным.

Коротко о главном

Сценарий работы программы — это описание ее общения с пользователем (пользовательского интерфейса). Интерфейс обязательно должен быть дружественным.

Любой символьный вывод на экран программируется с помощью оператора write или writeln.

Вопросы и задания

1. Что обозначает понятие «диалоговый характер программы»?
2. Какими средствами программируется диалог между пользователем и компьютером?
3. Что обозначает понятие «дружественный интерфейс»?
4. Выполните на компьютере все программы, приведенные в данном параграфе.
5. Постройте алгоритм и составьте программу, по которой будет реализован следующий сценарий: компьютер запрашивает номер дня недели, после ввода компьютер сообщает название этого дня. Например, если ввели 1, то выведется фраза «Это понедельник» и т. д.


И. Семакин, Л. Залогова, С. Русаков, Л. Шестакова, Информатика, 9 класс
Отослано читателями из интернет-сайтов


Наибольшая библиотека рефератов, планирование уроков информатики, материалы для подготовки к урокам информатики, ответы на тесты, изучай информатику 9 класс бесплатно


Если у вас есть исправления или предложения к данному уроку, напишите нам.

Если вы хотите увидеть другие корректировки и пожелания к урокам, смотрите здесь - Образовательный форум.

Логические операции: and , or , not Логические операции - применяют к операндам типа boolean , они возвращают значение типа boolean бинарные операции and , or унарная not Логическое выражение – имеют тип boolean . Not - логическое отрицание And – логическое умножение Or - логическое сложение a b a and b a or b not a 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0

Вычисление составной функции По значению x вычислить значение составной функции y , заданной в виде графика program calc_function_1; var x, y : real ; begin writeln (' Введите значение аргумента'); readln (x ); if x = -2) and (x = -1) and (x = 1) and (x = 2 then y := 0; writeln ('Для x = ', x, ' y = ', y); end .

Введите первое слагаемое: А = 237 Введите второе слагаемое: В = 658 А + В = 895 Пока!

Программирование диалога с компьютером Сценарий работы программы — это описание ее общения с пользователем (пользовательского интерфейса). Интерфейс обязательно должен быть дружественным. Любой символьный вывод на экран программируется с помощью оператора write или writeln .

Практическая часть: Вариант 1: Ты вчера был болен. Измерь-ка температуру! Сообщи, какая у тебя температура: 36.5 Ты здоров, дружок! Можешь идти в школу. Желаю успехов ! Вариант 2: Ты вчера был болен. Измерь-ка температуру! Сообщи, какая у тебя температура: 37.3 Ты еще болен! Раздевайся и ложись в постель. Поправляйся, дружок!

Практическая часть: Постройте алгоритм и составьте программу, по которой будет реализован следующий сценарий: компьютер запрашивает номер дня недели, после ввода компьютер сообщает название этого дня. Например, если ввели 1, то выведется фраза «Это понедельник» и т. д . ДОМАШНЕЕ ЗАДАНИЕ: §14 (ВОПРОСЫ И ЗАДАНИЯ)

program den; var d : integer ; begin write (' Введите день недели:'); readln (d); writeln ; if d=1 then writeln ('Сегодня понедельник'); if d=2 then writeln (' Сегодня вторник '); if d=3 then writeln (' Сегодня среда '); if d=4 then writeln (' Сегодня четверг'); if d=5 then writeln (' Сегодня пятница '); if d=6 then writeln (' Сегодня суббота'); if d=7 then writeln ('Сегодня воскресенье'); writeln ; writeln (' ПОКА!'); end .

По теме: методические разработки, презентации и конспекты


Устройство компьютера. Презентация для кружка по информатике в 1 классе.

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

Тексты и изображения в памяти компьютера.Презентация. 6 класс

Презентация может быть использована для самостоятельно изучения материала.


Презентация "Устройство компьютера" 8 класс

Презентация к уроку "Устройство компьютера" содержит ссылку на ЭОР "Конструктор-тренажёр" (Единая коллекция цифровых образовательных ресурсов), упражнения для закрепления и кроссворд.


Презентация по теме "Информационное моделирование на компьютере", 9 класс

Презентация по теме "Информационное моделирование на компьютере", 9 класс.

Начала программирования. Диалог. Выражения.Блок-схемы

Приведены примеры решения диалоговых задач, содержащих арифметические выражения. на языке блок-схем и Паскале. Даны задачи для самостоятельного решения.Замечание. На предпросмотре не изображаются граф.


Презентация ""Объектно-ориентированное программирование в Visual Basic" 9 класс

Презентация для использования на уроках информатики по программе Н.Д.Угриновича в рамках раздела "Алгоритмизация и программирование".


Тренажер для отработки навыка программирования диалога с компьютером, 9 класс

Любую программу составлять нужно так, чтобы ее выполнение реализовывало диалог между компьютером и пользователем в понятной для человека форме. С этой целью для учащихся 9 класса разработана Пра.

Читайте также: