Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
24
Добавлен:
31.03.2015
Размер:
199.68 Кб
Скачать
    1. Интерфейс программы

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

Интерфейс задачи описывается в ее спецификации и реализуется в программе в форме описания входных и выходных данных.

Интерфейс операционной системы реализуется в виде описания и установления связи с внешними файлами, которые использует программа.

Интерфейс пользователя представляет собой взаимодействие его с компьютером при решении задачи. Эта связь реализуется программно. Часть программы, которая обеспечивает эту связь, назовем оболочкой программы. Так как пользователя интересует результат решения конкретной задачи, а не программа, реализующая это решение, то оболочка программы должна обеспечить максимальную независимость пользователя от программы, а также простоту и удобство взаимодействия. Здесь можно руководствоваться такими критериями, как количество нажатий клавиш должно быть минимальным, а информативность сообщений компьютера должна быть максимальна.

Пользователь взаимодействует с компьютером через экран монитора. Работая в среде Турбо-Паскаль, удобно использовать модуль CRT, содержащий процедуры для работы с экраном. Чтобы процедуры этого модуля стали доступны программе, надо после заголовка программы записать директиву Uses CRT, которая устанавливает связь с этим модулем.

Рассмотрим несколько простых рекомендаций по разработке интерфейса пользователя.

  1. После запуска программы, то есть компиляции (сompile) и выполнения (run),

на экране монитора остается окно редактора с текстом программы. Для переключения на окно результатов, который соответствует стандартному файлу Output, используются клавиши Alt-F5.

Для того, чтобы не повторять многократно «клавишное» переключение экранов про запусках программы, можно такое переключение выполнить программно. Чтобы оставалось окно результатов, можно использовать последовательно операции:

  • О

    Clrscr

    чистка экрана результатов перед

началом выдачи данных:

  • З

    repeat until Keypressed

    адержка экрана с результатами

до нажатия любой клавиши:

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

  1. При вводе данных с клавиатуры выполнение программы приостанавливается

перед процедурой ввода данных (Read или Readln) в ожидании набора значений этих данных с окном результатов на экране монитора. Для того, чтобы было понятно, какие конкретно ожидаются данные, надо вывести на экран текст с подсказкой, какие данные должны быть введены и, если необходимо, уточнить их характеристики.

Н

Writeln (‘Введите x, eps’);

Readln (x, eps);

апример,

подсказка для ввода данных:

Не рекомендуется использовать процедуры ввода (Read или Readln) в целях задержки окна результатов, так как эти процедуры реагируют только на нажатие клавиши Enter.

3. Для тестирования программы приходится многократно ее выполнять, подбирая различные значения входных данных. Чтобы программу не перезапускать и управлять ее повторением в диалоге, надо добавить оболочку программы для тестирования: построить цикл, управляемый с клавиатуры, где телом цикла является главная программа.

Для связи программы с клавиатурой используется функция Readkey, которая приостанавливает работу программы до тех пор, пока не будет нажата любая клавиша и возвращает код этой клавиши типа char. Если запомнить этот код: ch := Readkey, то с помощью переменной сh можно управлять циклом, как видно ниже.

program . . .

var

ch: char;

. . .

begin

repeat

writeln ('Повторить программу? (Y/N)') ;

ch := Readkey

until (ch='N') or (ch='n')

end .

Главный алгоритм

Соседние файлы в папке ПРАКТИКУМ-1--5