Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АНХ_Лаб_работа1.doc
Скачиваний:
3
Добавлен:
16.11.2018
Размер:
219.65 Кб
Скачать

АКАДЕМИЯ НАРОДНОГО ХОЗЯЙСТВА ПРИ ПРАВИТЕЛЬСТВЕ РФ

Экономический факультет

Кафедра Информатики и системного анализа

В.П.Грибанов

Лабораторный практикум

по дисциплине

«Информатика и основы программирования»

Москва 2009

Лабораторная работа №1

«Основы программирования на языке высокого уровня Паскаль»

Общая постановка задачи для лабораторных работ.

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

В начале работы программы выдается заставка с указанием авторов работы (номер учебной группы, номер варианта, фамилии и имена разработчиков программы).

Конкретные задания по обработке данных должны быть реализованы в виде соответствующих процедур и/или функций. Обмен данными с ними осуществляется только через списки параметров.

Процедуры и функции должны быть размещены в соответствующих библиотеках-модулях (Unit).

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

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

Лабораторная работа № 1

Часть 1. Организация управления работой программы сложной структуры с помощью многоуровневого меню.

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

Постановка задачи разработки меню. Рекомендации по разработке.

.

Создать и отладить программу сложной структуры, управление работой которой осуществляется с помощью меню. Цель данного этапа – создать корректно работающую управляющую структуру для программы работы с массивами и строками

Первоначально меню следует выполнить в универсальной форме, и оно может иметь следующий вид

З а г о л о в о к м е н ю

1. Первый пункт меню

2. Второй пункт меню

N. Выход из программы.

Ваш выбор:

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

CASE choice OF… , где choice - переменная, содержащая корректное значение номера пункта меню.

В ответ на выбор пользователем некоторого пункта в процессе отладке должна быть вызвана процедура, выдающая сообщение вида «Работает первый/второй/… пункт меню», а затем вновь происходит выдача меню. Таким способом имитируется работа некоторой подпрограммы при выборе соответствующего пункта меню. Выдача диагностических сообщений даёт возможность контролировать правильность выбора и вызова отладочной подпрограммы. Такие подпрограммы, которые фактически ничего не делают, кроме выдачи соответствующих сообщений, называются в тестировании заглушками и в дальнейшем заменяются реальными подпрограммами.

После выполнения выбранного пункта вновь выдаётся меню.

При выборе пользователем пункта «Выход из программы» программа должна запросить у пользователя подтверждение выхода или отказ от него. При подтверждении выхода программа прекращает работу, при отказе от него пользователю вновь выдаётся меню.

Меню должно появляться в центре экрана, на котором не должно оставаться результатов выполнения предыдущих шагов. Для этого необходимо использовать модуль CRT для очистки экрана (процедура CLRSCR) и для управления расположением меню на экране (процедура GotoXY(…)).

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

Программа «Меню» должна быть защищена

- от ввода нецифровой информации,

- от ввода недействительного номера пункта меню (значение номера находится вне интервала реальных пунктов меню).

При ошибочном вводе необходимо всякий раз выдавать пользователю сообщение о типе совершённой им ошибки.

Для контроля ввода рекомендуется применение процедуры Val ( Symbol, Code), преобразующей введённую в символьной форме информацию (Symbol) в число (Digit). Параметр Code показывает результат преобразования: если значение параметра Code = 0, то преобразование прошло успешно

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

Writeln (’ Введена не цифра. Повторите ввод. ‘);

При выборе несуществующего номера пункта меню также необходимо предусмотреть выдачу соответствующего диагностического сообщения, например,

Writeln (’ Выбран несуществующий пункт меню ‘);

После диагностических сообщений на экран вновь выдаётся меню.

Выдачу меню, ввод ответа пользователя и контроль введенного значения можно разместить внутри бесконечного цикла, прекращающегося только тогда, когда пользователь введет корректное значение. Более целесообразно дополнительно установить счётчик повторений попыток ввода (3-5 неудачных попыток). Когда заданный лимит попыток будет превзойдён, программа прекращает работу, уведомив пользователя о том, что он исчерпал свои возможности.

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

Рекомендация:

Данный этап заканчивается сохранением полученного варианта программы. Все дальнейшие действия производятся над копией программы.