Описание задания ко второй части курсовой работы
Во второй части курсовой работы дана структура исходных данных. Необходимо:
1.Разработать алгоритм и составить программу на языке Паскаль для создания последовательного файла, хранящего сведения заданной структуры.
2. Разработать алгоритм и составить программу на языке Паскаль для обработки последовательного файла с целью выдачи на печать в виде таблицы информации в соответствии с индивидуальным заданием.
Задание по вариантам
№ | Задача |
А. Создать файл содержащий сведения о месячной заработной плате рабочих завода. Каждая запись содержит поля – фамилия рабочего, наименование цеха, размер заработной платы за месяц. Количество записей -30, из них три цеха по 10 человек. Б. Вычислить общую сумму выплат за месяц по цеху Х , а также среднемесячный заработок рабочего этого цеха. Вывести ведомость для начисления заработной платы рабочим этого цеха. Наименование цеха Х вводить отдельно с терминала. | |
А. Создать файл содержащий сведения о количестве изделий, собранных сборщиками цеха за неделю. Каждая запись содержит поля – фамилия сборщика, количество изделий, собранных им ежедневно в течение шестидневной недели ( понедельник, вторник, среда, четверг, пятница, суббота) Количество записей –более 25 Б. По каждому сборщику просуммировать количество деталей, собранное им за неделю. Определить сборщика, собравшего наибольшее число изделий и день когда он достиг наивысшей производительности труда. | |
А. Создать файл содержащий сведения о количестве изделий категории А, В, С , собранных рабочим за месяц. Структура записи имеет поля – Фамилия сборщика, наименование цеха, количество изделий по категориям, собранных рабочим за месяц. Количество записей -30, из них три цеха по 10 человек. Б. Считая заданными значения расценок Sa, Sb, Sc за выполненную работу по сборке единицы изделия категории А, В, С соответственно подсчитать: - общее количество изделий категорий А, В, С, собранных рабочим цеха; - ведомость заработной платы рабочих цеха Х, - Средний размер заработной платы работников этого цеха. Значения расценок Sa, Sb, Sc определить константами. Наименование цеха Х вводить отдельно с терминала | |
А. Создать файл, содержащий сведения о телефонах абонентов. Каждая запись имеет поля- фамилия абонента, год установки телефона, номер телефона. Количество записей –более 25 Б. По вводимой фамилии абонента выдать номер телефона. Определить количество установленных телефонов с ХХХХ года. Номер года вводится с терминала. | |
А.Создать файл, содержащий сведения об ассортименте игрушек в магазине. Структура записи – Название игрушки, цена, количество, возрастные границы(например 2..5, т.е. от двух до пяти). Количество записей -25 Б. Найти игрушки, которые подходят детям от 1 до 3 лет. Определить стоимость самой дорогой игрушки и её наименование. Определить игрушку, которая по стоимости не превышает Х рублей и подходит ребенку в возрасте от А до В лет. Значения Х, А, В- ввести с терминала. | |
А. Создать файл, содержащий сведения о сдаче студентами первого курса сессии. Структура записи – Индекс группы, фамилия студента, оценки по пяти экзаменам, признак участия в общественной работе: «1»- активное участие, «0»- не участие. Количество записей -30, из них три группы по 10 человек. Б. Начислить студентам группы Х по ведомости стипендию. Студент, получивший все оценки «5» и активно участвующий в общественной работе, получает повышенную стипендию- доплата 50 %, не активно участвует – 25 %. Студенты , получившие «4» и «5» , зачисляются на обычную стипендию. Студент получивший одну оценку «3», но активно-занимающийся общественной работой, также зачисляется на стипендию, в противном случае начисление стипендии не производится. Индекс группы вводится с терминала. | |
А. Создать файл, содержащий сведения о сдаче студентами сессии. Структура записи- Индекс группы, фамилии студентов, оценки по пяти экзаменам и пяти зачетам(«з»-зачет, «н»- незачет) Количество записей -30, из них три группы по 10 человек. Б. Определить фамилии, неуспевающих студентов с указанием индексов групп и количества задолженностей. Найти средний балл, полученный каждым студентом группы Х, и всей группой в целом. Индекс группы Х вводится с терминала. | |
А. Создать файл, содержащий сведения о личной коллекции книголюба. Структура записи- шифр книги, автор, название, год издания, местоположение(номер стеллажа, шкафа и т.д.). Количество записей -25 Б. Найти: - Местонахождение книги автора Х названия Y; - Список книг автора Z, находящихся в коллекции - Число книг издания ХХ года, имеющееся в библиотеке. Значения X, Y,Z, XX – вводятся по запросу с терминала. | |
А. Создать файл, содержащий сведения о наличии билетов и рейсах Аэрофлота. Структура записи- номер рейса, пункт назначения, время вылета, время прибытия, количество свободных мест в самолете. Количество записей -25 Б. Найти время отправления самолетов в город Х, наличие свободных мест на рейс в город Х с временем отправления Y. Значения X, Y– вводятся по запросу с терминала. | |
А. Создать файл, содержащий сведения об ассортименте обуви в магазине фирмы. Структура записи- артикул, наименование, количество, стоимость одной пары. Количество записей -25 Артикул начинается с буквы D- для дамской обуви, М-для мужской, Р- для детской. Б. Определить наличие в файле обуви артикула Х , узнать её стоимость, вывести ассортиментный список дамской обуви с указанием наименования и имеющегося в наличии числа пар каждой модели. Значения X– вводится по запросу с терминала. | |
А. Создать файл, содержащий сведения о количестве изделий, собранных сборщиками цеха за неделю. Каждая запись содержит поля- фамилия сборщика, количество изделий, собранных им ежедневно в течение шестидневной недели (в понедельник, вторник, среда, четверг, пятница, суббота). Количество записей –более 25 Б. По каждому сборщику просуммировать количество деталей, собранное им за неделю. Определить сборщика, собравшего наименьшее число изделий, и день когда он собрал наименьшее количество изделий. | |
А. Создать файл содержащий сведения о количестве изделий категории А, В, С, собранных рабочим за месяц. Структура записи имеет поля – Фамилия сборщика, наименование цеха, количество изделий по категориям, собранных рабочим за месяц. Количество записей -30, из них три цеха по 10 человек. Б. Считая заданными значения расценок Sa, Sb, Sc за выполненную работу по сборке единицы изделия категории А, В, С соответственно подсчитать: - общее количество изделий категорий А, собранных рабочим цеха Х; - вывести три ведомости по заработной плате для рабочих каждого цеха Значения расценок Sa, Sb, Sc определить константами. Наименование цеха Х вводить отдельно с терминала | |
А. Создать файл содержащий сведения о количестве изделий категории А, В, С , собранных рабочих за месяц. Структура записи имеет поля – Фамилия сборщика, наименование цеха, количество изделий по категориям, собранных рабочим за месяц. Количество записей -30, из них три цеха по 10 человек. Б. Считая заданными значения расценок Sa, Sb, Sc за выполненную работу по сборке единицы изделия категории А, В, С соответственно подсчитать: - общее количество изделий категорий А, В, С, собранных рабочими всех цехов; - ведомость заработной платы рабочих цеха Х и Y - Средний размер заработной платы работников этих цехов. Значения расценок Sa, Sb, Sc определить константами. Наименование цеха Х и Y вводить отдельно с терминала | |
А. Создать файл, содержащий сведения о телефонах абонентов. Каждая запись имеет поля- фамилия абонента, год установки телефона, номер телефона. Количество записей – более 25 Б. По вводимой фамилии абонента А выдать номер телефона. Определить количество установленных телефонов с ХХХХ года по YYYY год. Диапазон лет XXXX и YYYY и фамилия абонента вводится с терминала. | |
А.Создать файл, содержащий сведения об ассортименте игрушек в магазине. Структура записи – Название игрушки, цена, количество, возрастные границы(например 2..5, т.е. от двух до пяти). Количество записей -25 Б. Найти игрушки, которые подходят детям от 1 до 3 лет. Определить стоимость самой дешевой игрушки и её наименование и страну изготовителя. Определить игрушку, которая по стоимости не превышает Х рублей и подходит ребенку в возрасте от А до В лет и имеет страну изготовитель S. Значения Х, А, В, S - ввести с терминала. | |
А. Создать файл, содержащий сведения о сдаче студентами первого курса сессии. Структура записи – Индекс группы, фамилия студента, оценки по пяти экзаменам, признак участия в общественной работе: «1»- активное участие, «0»- не участие. Количество записей -30, из них три группы по 10 человек. Б. Начислить студентам всех трех групп по ведомости стипендию. Вывести эти ведомости Студент, получивший все оценки «5» и активно участвующий в общественной работе, получает повышенную стипендию- доплата 50 %, не активно участвует – 25 %. Студенты , получившие «4» и «5» , зачисляются на обычную стипендию. Студент получивший одну оценку «3», но активно-занимающийся общественной работой, также зачисляется на стипендию, в противном случае начисление стипендии не производится. Определить группу , получающую в сумме максимальную стипендию. | |
А. Создать файл, содержащий сведения о сдаче студентами сессии. Структура записи- Индекс группы, фамилии студентов, оценки по пяти экзаменам и пяти зачетам(«з»-зачет, «н»- незачет) Количество записей -30, из них три группы по 10 человек. Б. Определить фамилии студентов обучающихся на «отлично» и «хорошо», с указанием индексов групп. Найти средний балл, полученный каждым студентом группы Х, и всей группой в целом. Индекс группы Х вводится с терминала. | |
А. Создать файл, содержащий сведения о личной коллекции книголюба. Структура записи- шифр книги, автор, название, год издания, местоположение(номер стеллажа, шкафа, полки.). Количество записей -25 Б. Найти: - Местонахождение книги(номер стеллажа, шкафа, полки) автора Х названия Y и года S; - Список книг автора Z, находящихся в коллекции - Число имеющихся в библиотеке книг, изданных с ХХ года и их шифр. Значения X, Y,Z, XX – вводятся по запросу с терминала. | |
А. Создать файл, содержащий сведения о наличии билетов и рейсах Аэрофлота. Структура записи- номер рейса, пункт назначения, время вылета, время прибытия, количество свободных мест в самолете. Количество записей -25 Б. Найти время прибытия самолета в город Н, наличие свободных мест на рейс в город Х с временем отправления Y и датой Z. Значения X, Y, H, Z – вводятся по запросу с терминала. | |
А. Создать файл, содержащий сведения об ассортименте обуви в магазине фирмы. Структура записи- артикул, наименование, количество, стоимость одной пары. Количество записей -25 Артикул начинается с буквы D- для дамской обуви, М-для мужской, Р- для детской. Б. Определить наличие в файле обуви артикула Х , узнать её стоимость, вывести ассортиментный список детской обуви с указанием наименования и имеющегося в наличии числа пар каждой модели. Значения X– вводится по запросу с терминала. | |
А. Создать файл, содержащий сведения о телефонах абонентов. Каждая запись имеет поля- фамилия абонента, год установки телефона, номер телефона. Количество записей –более 25 Б. По вводимому адресу и телефону выдать фамилию абонента . Определить количество установленных телефонов у абонентов с фамилиями начинающихся с буквы Х. Буква Х вводится с терминала. | |
А. Создать файл, содержащий сведения об ассортименте товаров в магазине. Структура записи – артикул, название товара, цена, количество, страна-изготовитель. Количество записей -30 Б. Подобрать список товаров, которые подходят по имеющийся в наличии суммы Х. Определить стоимость самого дорогого товара и выдать на экран наименование, цену и страну –изготовитель. Значения Х ввести с терминала. | |
А. Создать файл, содержащий сведения о пациентах зубного врача продажи. Структура записи- фамилия, имя пациента, число поставленных ему пломб, стоимость одной пломбы, сумма внесенной оплаты ( у некоторых может равна нулю). Б. Определить сумму задолженности за лечение для пациента Х. Вывести всех пациентов полностью оплативших лечение. Вывести список пациентов имеющих задолженность с указанием суммы. Значения Х ввести с терминала в режиме диалога. | |
А. Создать файл, содержащий сведения о веществах в химической лаборатории. Структура записи- название вещества, его удельный вес, и проводимость( проводник, полупроводник, изолятор) Б. Определить удельные веса и названия всех полупроводников. Выбрать данные о проводниках и упорядочить их по убыванию удельных весов. | |
А. Создать файл, содержащий сведения об экспортируемых товарах: указываются наименование товара, страна, импортирующая товар, и объем поставляемой партии в штуках. Б. Определить страны, в которые экспортируется данный товар, и общий объем его экспорта | |
А. Создать файл, содержащий сведения об автомобиле которые состоят из марки, номера, цвет кузова, количество дверей, фамилии владельца, месяц прохождения очередного технического осмотра, дата прохождения медицинского осмотра водителя (день, месяц, год). Б. Определить фамилии владельцев и номера автомобилей R марки. Вывести количество автомобилей каждой марки в идее таблицы. Значение R вводится в диалоге с терминала | |
А. Создать файл, содержащий сведения об автомобиле которые состоят из марки, номера, цвет кузова, количество дверей, фамилии владельца, месяц прохождения очередного технического осмотра, дата прохождения медицинского осмотра водителя (день, месяц, год). Б. Определить фамилии владельцев и номера автомобилей R марки. Вывести количество автомобилей каждой марки в идее таблицы. Значение R вводится в диалоге с терминала | |
А. Создать файл, содержащий сведения об экспортируемых товарах: указываются наименование товара, страна, импортирующая товар, и объем поставляемой партии в штуках. Количество записей -30, из них три группы по 10 товаров для трех стран: Россия, Китай, США. Б. Определить страну, в которую экспортируют максимальный объем товара Вывести общий объем его экспорта по каждой стране. Найти для указанной страны Х- наименование и объем экспортируемых товаров. | |
А.Создать файл, содержащий сведения об ассортименте игрушек(Например: кукла, кубики, мяч, конструктор ит.п.) в магазине. Структура записи – Название игрушки , цена, количество, возрастные границы(например 2..5, т.е. от двух до пяти). Количество записей -25 Б. Получить следующие сведения: - название игрушек, которые подходят как детям 4 лет, так и детям 10 лет. - Вывести цены для всех кубиков в рублях и копейках и страну изготовителя. Например: 1. Кубик 25 руб. 50 коп. Китай - Определить название игрушек, которые не превышает Х рублей и подходит ребенку в возрасте А лет Значения Х, А - ввести с терминала. |
Пример выполнения 2 задания:
Решение:
В задании ко второй части курсовой работы необходимо разработать алгоритм и программу создания файла записей, содержащий сведения о станциях на ГТС. Структура записи приведена на рисунке 5.
Рисунок 5 - Структура записи ZAP
В таблице 5 приведены пояснения идентификаторов записи ZAP.
Таблица 5
Идентификатор | Пояснение | Тип |
STATION | Станция | String [7] |
TIP | Тип | String [12] |
REGION | Административный район | String [12] |
EMK | Ёмкость (номеров) | Integer |
NX | Абоненты нар. хозяйственного сектора | Integer |
KV | Абоненты квартирного сектора | Integer |
TAX | Таксофоны | Integer |
MG | М/г таксофон | Integer |
PР | Кабины переговорных пунктов | Integer |
В таблице 6 приведены исходные данные, которые будут записывайся в файл.
Таблица 6 Сведения о станциях на ГТС
Станция | Тип | Район | Емкость (номеров) | Абоненты нар. хоз. сектора | Абоненты квартир. сектора | Таксофоны | М/г таксофоны | Кабины перегов. пунктов |
АТСЭ-10 | Электрон | Октябрьский | ||||||
АТСК-23 | Координат | Центральный | ||||||
АТСШ-46 | Декад/Шаг | Кировский | ||||||
АТСЭ 17 | Электрон | Октябрьский | ||||||
АТСШ-22 | Декад/Шаг | Центральный | ||||||
АТСК-41 | Координат | Ленинский | ||||||
AТСK-45 | Координат | Кировский | ||||||
A'ТСШ-66 | Декад/Шаг | Октябрьский | ||||||
АТСК-62 | Координат | Дзержинский | ||||||
АТСК-26 | Координат | Заельцовский | ||||||
АТСК-43 | Координат | Ленинский | ||||||
АТСЭ-20 | Электрон | Центральный | ||||||
АТСК-63 | Координат | Дзержинский | ||||||
АТСЭ-24 | Электрон | Дзержинский | ||||||
АТСК-64 | Координат | Дзержинский | ||||||
АТСШ-67 | Декад/Шаг | Октябрьский | ||||||
АТСК-44 | Координат | Кировский | ||||||
АТС'К-35 | Координат | Советский | ||||||
АТСК-28 | Координат | Заельцовский | ||||||
АТСК-33 | Электрон | Советский |
На рисунке 6 приведена схема алгоритма создания файла. В схеме сначала выполняется открытие файла. Затем организуется цикл ввода 20 записей. В этом цикле вводятся поля записи, вычисляется емкость станции и запись записывается в файл. После выхода из цикла файл закрывается.
Рисунок 6. Схема алгоритма создания файла
Текст программы создания файла:
PROGRAM sozdan;
TYPE;
zap=record
station:string [7];
tip,region:string [12];
emk,nx,kv,tax,mg.pp:integer;
end;
VAR
f:file of zap;
x:zap;
I:integer;
BEGIN
ASSlGN (f, ‘atc.dat');
REWRITE (f);
WRITELN(' Введите сведения о 20 станциях ГТС’);
FOR I=1 TO 20 DO
BEGIN
WRITE ('Станция:');
READLN (x.station);
WRITE ('ee тип:');
READLN (x.tip);
WRITE (' административный район');
READLN (x.region);
WRITЕ (' количество абонентов народохозяйственного cеktoра:');
REAULN (x.nx);
WRITE (' количество абонентов квартирного сектора:');
READLN (x.kv);
WRITE (' количество таксофонов:');
READLN (x.tax); .
WRITE (' количество междугородных таксофонов;');
READLN (x.ing);
WRITE (' количество кабин переговорных пунктов;');
READLN (x.pp);
x.emk:=x.nx+x.kv+x.mg+x.tax+x.pp;
WRITE (f,x);
END;
CLOSE (f);
END.
По индивидуальному заданию надо разработать алгоритм получения сведений о станциях, у которых более 75% абонентов квартирного сектора. Алгоритм приведен на рисунке 7. Но алгоритму сначала открывается файл и организуется цикл чтения информации из файла. В этом цикле анализируется, какой процент составляют абоненты квартирного сектора. Если этот процент составлял более 75%, то информация о этих станциях выводится на экран.
|
Текст программы приведен ниже:
PROGRAM obrab;
USES crt; .
TYPE
zap = record
station:string [7];
tip,region:string [12];
emk,nx,kv,tax,mg,pp;integer;
end;
VAR
F:file of zap;
x:zap;
pr:real;
BEGIN
ASSIGN (f,’atc.dat);
RESET (f);
WRITELN ('Сведения о станциях, у которых абоненты квартирного сектора >75%’);
WRITLN (' __________________________________________________________’);
WITELN ('|Станция|Тип|Админ.район|Емкость(ном) |Абон.нар.хоз.сект|Абон.кв.сект.| Такс.|
WHILE not eоf (f) DO
BEGIN
READ(f,x);
pr:=x.kv/(x.kv+x.nx+x.tax+x.mg+x.pp)*100;
IF pr > 75 THEN
WRITELN (‘|’, x.station:7,'|', x.tip:12;’|', x.region:12,’|’, x.emk:5; ‘|’:3, x.nx:5, ‘|’:4, x.kv:5, ‘|’:4, x.tax:4, ‘|’, x.mg:4; ‘|’, x.pp:4, ‘|’:3);
END;
WRITELN ('Для окончания программы нажмите Enter… ');
WRITELN ('|______|________|__________|______|_____|______|_____|________|______|);
WHILE not keypressed DO;
CLOSE (f);
END.
Результаты обработки приведены в таблице 7.
Таблица 7 Сведения о станциях, у которых абонентов квартирного сектора>75%
Станция | Тип | Район | Емкость (номеров) | Абоненты нар. хоз. сектора | Абоненты квартир. сектора | Таксофоны | М/г таксофоны | Кабины перегов. пунктов |
АТСШ-67 | Декад/Шаг | Октябрьский | ||||||
АТСК-28 | Координат | Заельцовский | ||||||
АТСЭ-33 | Электрон | Советский |
Приложение 1