Программирование в Turbo Pascal

Описание:
Тип работы: реферат
V Исходные данные в виде таблицы, где указаны коды городов, с которыми велись разговоры, общее время разговора с каждым городом за один месяц, стоимость одной минуты разговора (меняется каждый месяц);
Доступные действия
Введите защитный код для скачивания файла и нажмите "Скачать файл"
Защитный код
Введите защитный код

Нажмите на изображение для генерации защитного кода

Текст:

Московский Государственный Индустриальный Университет

Институт Дистанционного Образования

Курсовая работа

по дисциплине: «ИНФОРМАТИКА» по теме: «Выполнение задания по программированию в TURBO PASCAL»

Выполнила: студентка группы 01М22

Белоусова Екатерина

Преподаватель:
Суворов С.В.

Москва, 2002

Содержание:

Стр.
1. Формулировка задания

3
2. Описание переменных 4
3. Блок-схема 5
4. Программа 6
5. Результаты проверки правильности программы 9
6. Результат подстановки данных в программу 10
7. Список используемой литературы

10

Формулировка задания:
На телефонном узле в конце каждого квартала составляется на каждого абонента ведомость оплаты междугородных телефонных разговоров (с 7-ю городами) в течение квартала (3 месяца).
Написать программу, которая вводит исходные данные, выполняет расчеты и выводит на экран:

V Исходные данные в виде таблицы, где указаны коды городов, с которыми велись разговоры, общее время разговора с каждым городом за один месяц, стоимость одной минуты разговора (меняется каждый месяц);

V Общая продолжительность разговоров с каждым городом за квартал;

V Плата за каждый месяц;

V Общая плата за 3 месяца;

V Город с наибольшей платой.

Требование к вводу информации:

Исходные данные вводятся с клавиатуры.

Требования к выводу результатов:

Результаты выводятся на экран.

Требования к структуре программы.

Программа должна состоять из следующих частей:

V Вывод заставки с информацией о студенте и задании;

V Ввод данных (выполняется в диалоговом режиме);

V Вывод исходных данных и результатов (на один экран).

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

Используемые цвета:

Черный (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.

Нет

Да

Нет Да

Да

Нет

Нет

Нет Да

Да

Да

program kursovik; uses crt;

type telef=record kod:integer; tpm1,tpm2,tpm3,price1,price2,price3:integer; end; telef1=record kod,tpm,ob:integer; pr1,pr2,pr3:integer; end; var a:file of telef;

tel:telef; res:array[1..7] of telef1; i,j,s,aa,max:integer; begin; textbackground(10); clrscr; textcolor(0); gotoxy(15,2); writeln("Курсовая работа студента группы 01М22 Белоусовой Е.В."); gotoxy(27,3); writeln("Задание на курсовую работу:"); textcolor(4); writeln; writeln(" На телефонном узле в конце каждого квартала составляется на каждого абонента"); writeln("ведомость оплаты междугородных телефонных разговоров (с 7-ю городами) в течение"); writeln("квартала (3 месяца)."); writeln(" Написать программу, которая вводит исходные данные, выполняет расчеты и "); writeln("выводит на экран:"); writeln(" - исходные данные в виде таблицы, где указаны коды городов, с которыми велись"); writeln(" разговоры, общее время разговора с каждым городом за один месяц, стоимость"); writeln(" одной минуты разговора (меняется каждый месяц);"); writeln(" - общая продолжительность разговоров с каждым городом за квартал;"); writeln("плата за каждый месяц;"); writeln("общая плата за 3 месяца;"); writeln("город с наибльшей платой."); gotoxy(27,18); textcolor(0); writeln("Требование к вводу информации"); textcolor(4); writeln(" - исходные данные вводятся с клавиатуры."); textcolor(0); writeln; writeln(" Требование к выводу результатов"); textcolor(4); writeln(" - результат выводятся на экран."); textcolor(14); writeln; writeln(" Для продолжения работы программы нажмите
ENTER"); readln; clrscr; textcolor(0); writeln(" Требования к структуре программы "); textcolor(4); writeln(" Программа должна состоять из следующих частей:"); writeln(" - вывод заставки с информацией о студенте и задании;"); writeln(" - ввод данных (выполняется в диалоговом режиме);"); writeln(" - вывод исходных данных и результатов (на один экран)."); textcolor(0); writeln(" Требования к размещению исходных данных внутри программы "); textcolor(4); writeln(" Исходные данные располагаются в файле, компонентами которого являются записи."); writeln("Структура каждой записи и типы ее полей выбираются в зависимости от задания."); textcolor(0); writeln(" Используемые цвета "); textcolor(4); writeln(" - черный(0),красный(4), светло-зеленый(10), желтый(14)"); textcolor(14); gotoxy(18,24); writeln("Для продолжения работы программы нажмите ENTER"); readln; clrscr; assign(a,"kurs.dat"); rewrite(a); textcolor(0); for i:=1 to 7 do begin write("Введите код ",i,"-го города: "); readln(tel.kod); write("Введите общее время разговора с городом ",tel.kod," за 1-й месяц:
"); readln(tel.tpm1); write("Введите стоимость одной минуты разговора с городом ",tel.kod," в
1-м месяце: "); readln(tel.price1); write("Введите общее время разговора с городом ",tel.kod," за 2-й месяц:
"); readln(tel.tpm2); write("Введите стоимость одной минуты разговора с городом ",tel.kod," в
2-м месяце: "); readln(tel.price2); write("Введите общее время разговора с городом ",tel.kod," за 3-й месяц:
"); readln(tel.tpm3); write("Введите стоимость одной минуты разговора с городом ",tel.kod," в
3-м месяце: "); readln(tel.price3); write(a,tel); end; close(a);reset(a); s:=1; while not eof(a) do begin read(a,tel); res[s].kod:=tel.kod; res[s].tpm:=tel.tpm1+tel.tpm2+tel.tpm3; res[s].pr1:=tel.tpm1*tel.price1; res[s].pr2:=tel.tpm2*tel.price2; res[s].pr3:=tel.tpm3*tel.price3; res[s].ob:=res[s].pr1+res[s].pr2+res[s].pr3; s:=s+1; end;close(a); clrscr; writeln("Код города Общее время разговора за каждый месяц Стоимость минуты разговора"); reset(a); while not eof(a) do begin read(a,tel); writeln(" ",tel.tpm1,"

",tel.price1); writeln(" ",tel.kod," ",tel.tpm2,"

",tel.price2); writeln(" ",tel.tpm3,"

",tel.price3); end; textcolor(14); gotoxy(18,24); writeln("Для продолжения работы программы нажмите ENTER"); readln; clrscr; textcolor(0); writeln("Код города Общее время разговора за квартал Плата за месяц
Общая плата"); for i:=1 to 7 do begin aa:=res[i].kod; writeln("
",res[i].pr1); writeln(" ",aa," ",res[i].tpm,"

",res[i].pr2," ",res[i].ob); writeln("
",res[i].pr3); end; max:=res[1].ob; for i:=1 to 6 do begin if res[i+1].ob>max then begin max:=res[i+1].ob; j:=i+1; end;

end; writeln("Город с наибольшей платой: ",res[j].kod); textcolor(14); gotoxy(18,24); writeln("Для завершения работы программы нажмите ENTER"); readln; end.

|Таблица исходных данных | |Таблица результатов |
| |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 |1 | | | |1 | |
| |1 |1 | | | |1 | |
| |1 |1 | | | |1 | |
| |1 |1 | | | |1 | |
| |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 |180 |
| | |80 | |
| | |80 | |
|5 |6 |21 |42 |
| | |14 | |
| | |7 | |
|6 |17 |36 |173 |
| | |60 | |
| | |77 | |
|7 |27 |104 |334 |
| | |90 | |
| | |140 | |
| | | | |
|Город с наибольшей платой - 7 |

Список использованной литературы:
1. Фигурнов В.Э. IBM PC для пользователя. Изд. 6-е, М., 1995 г.
2. Фаронов В. В., Турбо Паскаль 7.0., Учебное пособие. – М.: «Нолидж», 1999 г.
3. Острейковский В.А. Информатика. –М.: «Высшая школа», 2000 г.
-----------------------

Конец

i = 7

Вывод города с наибольшей платой

max:= res[1+1].ob

max:= res[1].ob

i := 0

i := i+1

res[1+1].ob>max

i = 7

Вывод на экран таблицы результата расчетов

Конец файла записи

Вывод на экран таблицы исходных данных

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

i = 7

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

i := 0

i := i+1

Описание переменных

Вывод заставки на экран

Вызов модуля CRT

Описание типов переменных

Начало

Информация о файле
Название файла Программирование в Turbo Pascal от пользователя z3rg
Дата добавления 14.4.2009, 18:26
Дата обновления 14.4.2009, 18:26
Тип файла Тип файла (zip - application/zip)
Скриншот Не доступно
Статистика
Размер файла 21.55 килобайт (Примерное время скачивания)
Просмотров 2338
Скачиваний 2
Оценить файл