Учебная работа. Реферат: Программирование в Turbo Pascal

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Контрольные рефераты

Учебная работа. Реферат: Программирование в Turbo Pascal

Столичный Муниципальный Промышленный Институт

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

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

по дисциплине: «ИНФОРМАТИКА»

по теме: «Выполнение задания по программированию в TURBOPASCAL»

Выполнила: студентка группы 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-ий месяц соответственно, целые числа.

price
1,
price
2,
price
3
— стоимость 1-ой минутки разговора за 1-ый, 2-ой и 3-ий месяц соответственно, также целые числа.

Тип:telef1=record

kod,tpm,ob:integer;

pr1,pr2,pr3:integer;

end
;

Тип записи telef1
также является представлением инфы о городке.

к
od
— код городка, tpm
— общее время разговора с городом за квартал (3 месяца).

pr
1,
pr
2,
pr
3
— стоимость разговора с городом за 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
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

180

80

80

5
6

21

42

14

7

6
17

36

173

60

77

7
27

104

334

90

140

город с большей платой — 7

Перечень использованной литературы:

1. Фигурнов В.Э. IBMPC для юзера. Изд. 6-е, М., 1995 г.

2. Фаронов В. В., Турбо Паскаль 7.0., Учебное пособие. – М.: «Нолидж», 1999 г.

3. Острейковский В.А. Информатика. –М.: «Высшая школа», 2000 г.

]]>