Курсовая: Программирование в Turbo Pascal
Московский Государственный Индустриальный Университет
Институт Дистанционного Образования
Курсовая работа
по дисциплине: лИНФОРМАТИКА
по теме: лВыполнение задания по программированию в TURBO PASCAL
Выполнила: студентка группы 01М22
Белоусова Екатерина
Преподаватель: Суворов С.В.
Москва, 2002
Содержание:
Стр.
1. Формулировка задания 3
2. Описание переменных 4
3. Блок-схема 5
4. Программа 6
5. Результаты проверки правильности программы 9
6. Результат подстановки данных в программу 10
7. Список используемой литературы 10
Формулировка задания:
На телефонном узле в конце каждого квартала составляется на каждого абонента
ведомость оплаты междугородных телефонных разговоров (с 7-ю городами) в
течение квартала (3 месяца).
Написать программу, которая вводит исходные данные, выполняет расчеты и
выводит на экран:
ü Исходные данные в виде таблицы, где указаны коды городов, с которыми
велись разговоры, общее время разговора с каждым городом за один месяц,
стоимость одной минуты разговора (меняется каждый месяц);
ü Общая продолжительность разговоров с каждым городом за квартал;
ü Плата за каждый месяц;
ü Общая плата за 3 месяца;
ü Город с наибольшей платой.
Требование к вводу информации:
Исходные данные вводятся с клавиатуры.
Требования к выводу результатов:
Результаты выводятся на экран.
Требования к структуре программы.
Программа должна состоять из следующих частей:
ü Вывод заставки с информацией о студенте и задании;
ü Ввод данных (выполняется в диалоговом режиме);
ü Вывод исходных данных и результатов (на один экран).
Требования к размещению исходных данных внутри программы.
Исходные данные располагаются в файле, компонентами которого являются записи.
Структура каждой записи и типы ее полей выбираются в зависимости от задания.
Используемые цвета:
Черный (0) Светло-зеленый (10)
Красный (4) Желтый (14)
Описание переменных:
Описание типов:
Тип: telef=record
kod:integer;
tpm1,tpm2,tpm3,price1,price2,price3:integer;
end;
Тип записи telef является представлением информации о городе, а именно:
kod - код города, который является целым числом.
tpm1,tpm2,tpm3 - время разговора абонента с городом за 1-ый, 2-ой и 3-ий
месяц соответственно, целые числа.
price1,price2,price3 - стоимость 1-ой минуты разговора за 1-ый, 2-ой и
3-ий месяц соответственно, также целые числа.
Тип: telef1=record
kod,tpm,ob:integer;
pr1,pr2,pr3:integer;
end;
Тип записи telef1 также является представлением информации о городе.
кod - код города, tpm - общее время разговора с городом за квартал (3 месяца).
pr1,pr2,pr3 - стоимость разговора с городом за 1-ий, 2-ой и 3-ий месяцы
соответственно.
оb- общая стоимость разговора с городом за квартал.
Все поля типа записи telef1- целые числа.
Описание переменных:
а:file of telef;
Типизированный файл ла содержит записи типа telef, т.е. содержит
исходную информацию о каждом городе, времени разговора с каждым городом
помесячно и стоимость минуты разговора за каждый месяц квартала.
tel:telef;
tel-запись типа telef, содержащая информацию о городе.
tel-запись, которой по мере выполнения программы, присваиваются значения
записей, находящихся в типизированном файле ла.
res: array[1..7] of telef1;
res - одномерный массив, содержащий 7 элементов типа telef1, т.е.
этот массив содержит информацию о 7-ми городах, полученную в результате
расчетов, произведенных в программе.
i,j,aa,max: integer;
i - целое число, которое используется в цикле ввода исходных данных,
переменная лi в этом случае принимает значения кода городов, также эта
переменная используется в цикле вывода результатов на экран, где выступает в
роли значения номера города, т.е. в роли номера элемента массива res.
max,j- целые числа, переменные, используемые для определения кода города
с наибольшей оплатой за квартал. Переменной max присваиваются значения
общей стоимости разговоров с городом за квартал, по мере выполнения программы
переменной max присваивается наибольшее значение.
Переменной j присваивается значение номера элемента массива res
и при определении города с наибольшей оплатой j присваивается номер
этого города в массиве res.
s - целое число, используемое в цикле расчета результатов. Переменной
s присваиваются значения от 1 до 7, т.е. значения номеров элементов массива
res.
Нет
Да
Нет
Да
| |||
|
Таблица исходных данных | Таблица результатов | ||||||
| Код города | Общее время разговора за каждый месяц | Стоимость минуты разговора | Код города | Общая продолжительность разговоров за квартал | Плата за каждый месяц | Общая плата | |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | |||||
| 0 | 0 | 0 | |||||
| Город с наибольшей платой - 1 | |||||||
Таблица исходных данных | Таблица результатов | ||||||
| Код города | Общее время разговора за каждый месяц | Стоимость минуты разговора | Код города | Общая продолжительность разговоров за квартал | Плата за каждый месяц | Общая плата | |
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | 1 | 3 | 1 | 3 | |
| 1 | 1 | 1 | |||||
| 1 | 1 | 1 | |||||
| Город с наибольшей платой - 1 | |||||||
Таблица исходных данных | ||
| Код города | Общее время разговора за каждый месяц | Стоимость минуты разговора |
| 1 | 7 | 10 |
| 8 | 10 | |
| 9 | 15 | |
| 2 | 1 | 5 |
| 2 | 5 | |
| 3 | 5 | |
| 3 | 4 | 6 |
| 5 | 6 | |
| 6 | 7 | |
| 4 | 2 | 10 |
| 4 | 20 | |
| 8 | 10 | |
| 5 | 3 | 7 |
| 2 | 7 | |
| 1 | 7 | |
| 6 | 4 | 9 |
| 6 | 10 | |
| 7 | 11 | |
| 7 | 8 | 13 |
| 9 | 10 | |
| 10 | 14 | |
Таблица результатов | ||||
| Код города | Общая продолжительность разговоров за квартал | Плата за каждый месяц | Общая плата | |
| 1 | 24 | 70 | 285 | |
80 | ||||
135 | ||||
| 2 | 6 | 5 | 30 | |
10 | ||||
15 | ||||
| 3 | 15 | 24 | 96 | |
30 | ||||
42 | ||||
| 4 | 14 | 20 | 80 | |
80 | ||||
| 5 | 6 | 21 | 42 | |
14 | ||||
7 | ||||
| 6 | 17 | 36 | 173 | |
60 | ||||
77 | ||||
| 7 | 27 | 104 | 334 | |
90 | ||||
140 | ||||
| Город с наибольшей платой - 7 | ||||
