Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа ИСТз 21,22.doc
Скачиваний:
18
Добавлен:
28.09.2019
Размер:
321.54 Кб
Скачать

Задание 2.

Написать программу зачисления на стипендию студентов группы X. Размер обычной стипендии 70 руб. Студенту, получившему , все пять оценок «5», назначается стипендия, повышенная на 50 %; получившему оценки «4» и «5» — повышенная на 25 %; студенту, получившему хотя бы одну оценку «2», стипендия не назначается. В остальных случаях назначается обычный размер стипендии.

Методические указания

Для выполнения задания 2 необходимо: ввести с терминала индекс группы X, для которой печатается ведомость зачисления на стипендию; организовать в цикле чтение текущей записи файла, проверять совпадение значения поля «индекс группы» со значением переменной X. Если индексы не совпадают, то переходить к чтению следующей записи файла.

Если индексы совпадают, то проводить зачисление на стипендию по следующему алгоритму: ввести счетчики количества отличных и хороших оценок К5 и К4, задав их начальное значение 0; организовать цикл на пять повторений для проверки каждой оценки студента.

Если текущая оценка «2», то выходить из цикла, зачисления на стипендию не будет и переходить к чтению следующей записи файла; если оценка «5», то увеличить счетчик К5 на 1 и продолжить цикл просмотра оценок; если оценка «не 5», то проверить ее на значение «4».

Если оценка «4», то счетчик К4, увеличить на 1 и продолжить цикл. После просмотра всех оценок проверить значение счетчика К5 — равно ли пяти? При положительном ответе назначить стипендию 70 + 0,5*70=105 руб.

Выдать на печать фамилию студента, размер стипендии и перейти к чтению следующей записи; если К5 не равно пяти, то проверить равенство пяти суммы значений К5 и К4.

При ответе ДА назначить стипендию 70 + 0,25*70 = 87,5 руб., в противном случае — стипендию 70 руб. и перейти к печати строки документа о зачислении на стипендию, а затем — к чтению новой записи. При обнаружении конца файла завершить решение задачи.

Программы в Pascal имеют вид:

program lr15b ;

label 2;

type zap=record

index:string[6];

fam:string[20];

marker:array[1..5] of char;

end;

var sessya:file of zap;

y:zap;

x:string[6];

i, k, k4, k5, n: integer;

s:real;

begin

assign (sessya, ‘sessya’)',

reset(sessya);

writeln(ввeдитe индекс группы');

readln(x);

writeln('вeрoятнocть зачисления на стипендию');

writeln(‘cтудeнтoв группы');

writeln('i i i i');

writeln(‘i N/N i фамилия i руб i');

writeln (‘I i ii');

n:=o;

2: while not eof(sessya) do

begin

read(sessya.y);

if y.index=x then

begin

k4:=0; k5:=0;

for i:=l to 5 do

begin

if y.marker=’2’ 'then goto 2;

if y.marker='5' then k5:=k5+1;

if y.marker='4' then k4:=k4+1;

end;

end;

s:=70.0; n:=n+1;

if k5:=5 then s:=105.0 else

if (k5*k4)=5 then s:=87.5;

end;

writeln (‘кoнeц файла')

end.

Варианты задания курсовой работы:

Вариант задания

Условия задачи

1

1. Создать файл, содержащий сведения о месячной зарплате рабочих завода. Каждая запись содержит поля – фамилия рабочего, наименование цеха, размер зарплаты за месяц. Количество записей – произвольное.

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

2

1. Создать файл, содержащий сведения о количестве изделий, собранных сборщиками цеха за неделю. Каждая запись содержит поля – фамилия сборщика, количество изделий, собранных им ежедневно в течение 6-дневной недели, т.е. раздельно – в понедельник, вторник и т.д. Количество записей – произвольное.

2. Написать программу, выдающую на печать следующую информацию: фамилию сборщика и общее количество деталей, собранное им за неделю; фамилию сборщика, собравшего наибольшее число изделий, и день, когда он достиг наивысшей производительности труда.

3

1. Создать файл, содержащий сведения о количестве изделий категорий А, В, С, собранных рабочим за месяц. Структура записей имеет поля: фамилия сборщика, наименование цеха, количество изделий по категориям, собранных рабочим за месяц. Количество записей – произвольное.

3

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

- общее количество изделий категорий А, В, С, собранных рабочим цеха Х;

- ведомость зарплаты рабочих цеха Х;

- средний размер зарплаты работников этого цеха

4

1. Создать файл, содержащий сведения о телефонах абонентов. Каждая запись имеет поля: фамилия абонентов, год установки телефона, номер телефона. Количество записей произвольное.

2. Написать программу, выдающую информацию следующего вида:

- по вводимой фамилии абонента выдается номер телефона;

- определяется количество установленных телефонов с ХХХХ года. Номер года вводится с терминала.

5

1. Создать файл, содержащий сведения об ассортименте игрушек в магазине. Структура записи: название игрушки, цена, количество, возрастные границы, например 2-5, т.е. от 2 до 5 лет. Количество записей произвольно.

2. Написать программу, в результате выполнения которой выдаются следующие сведения:

- названия игрушек, которые подходят детям от 1 до 3 лет;

- Стоимость самой дорогой игрушки и ее наименование;

- название игрушки, которая по стоимости не превышает x рублей и подходит ребенку в возрасте от a до b лет. Значения x, a, b ввести с терминала

6

1. Создайте файл, содержащий сведения о сдаче студентами I курса кафедры «ЭВМ» сессии. Структура записи: индекс группы, фамилия студента, оценка по пяти экзаменам, признак участия в общественной работе: «1» - активное участие, «0» - неучастие. Количество записей – 30.

2. Написать программу зачисления студентов группы Х на стипендию. Студент, получивший все оценки «5» и активно участвующий в общественной работе, зачисляется на повышенную стипендию (доплата 50%), не активно участвует – доплата 25%. Студенты, получившие «4» и «5», зачисляются на обычную стипендию. Студент, получивший одну оценку «3», но активно занимающийся общественной работой, также зачисляется на стипендию, в противном случае зачисление не производится. Индекс группы вводится с терминала.

7

1. Создайте файл, содержащий сведения о сдаче студентами сессии. Структура записи: индекс группы, фамилия студента, оценка по пяти экзаменам и пяти зачетам («з» означает зачет, «н» - незачет). Количество записей – 25.

2. Написать программу, выдающую следующую информацию:

- фамилии неуспевающих студентов с указанием индексов групп и количества задолженностей;

- средний балл, полученный каждым студентом группы Х, и всей группой в целом.

8

1. Создайте файл, содержащий сведения о личной коллекции книголюба. Структура записи: шифр книги, автор, название, год издания, местоположение (номер стеллажа, шкафа и т.п.). Количество записей произвольное.

2. Написать программу, выдающую следующую информацию:

- местонахождение книги автора Х названия У. Значение Х, У ввести с терминала;

- список книг автора Z, находящихся в коллекции;

- число книг издания ХХ года, имеющееся в библиотеке

9

1. Создать файл, содержащий сведения о наличии билетов и рейсах Аэрофлота. Структура записи: номер рейса, пункт назначения, время вылета, время прибытия, количество свободных мест в салоне. Количество записей произвольное.

2. Написать программу, выдающую информацию следующего вида:

- время отправления самолетов в город Х;

- наличие свободных мест на рейс в город Х с временем отправления У.

Значения Х, У вводятся по запросу с терминала.

10

1. Создайте файл, содержащий сведения об ассортименте обуви в магазине фирмы. Структура записи: артикул, наименование, количество, стоимость одной пары. Количество записей произвольное. Артикул начинается с буквы Д - для дамской обуви, М -для мужской, Д- для детской.

2. Написать программу, выдающую следующую информацию:

- о наличии и стоимости обуви артикула Х;

- ассортиментный список дамской обуви с указанием наименования и имеющегося в наличии числа пар каждой модели.

11

1. Создайте два файла, содержащих сведения о десяти нападающих хоккейных команд: «Динамо» и «Спартак» соответственно: имена нападающих, число заброшенных ими шайб, сделанных голевых передач, заработанное штрафное время.

2. Написать программу, которая по данным, извлеченным из этих файлов, создает новый третий файл, содержащий имя, команду, сумму очков (голы + передачи) для шести лучших игроков обеих команд. Имена и пользователи результативности хоккеистов вывести на экран.

12

1. Создать файл, содержащий сведения о том, какие из пяти предлагаемых дисциплин по выбору желает слушать студент. Структура записи: фамилия студента, индекс группы, 5 дисциплин, средний балл успеваемости. Выбираемая дисциплина отмечается символом 1, иначе – пробел. Количество записей -25.

2. Написать программу, которая печатает список студентов, желающих прослушать дисциплину Х. Если, число желающих превысит 8 человек, то отобрать студентов, имеющих более высокий средний балл успеваемости.

13

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

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

14

  1. Создать файл, содержащий сведения о сданной в ремонт радиоаппаратуре. Структура записи: наименование группы изделий(телевизор, радиоприемник и т. п.),марка изделия, дата приемки в ремонт, состояние готовности заказа (выполнен, не выполнен). Количество записей произвольное.

  2. Написать программу, которая выводит:

- информацию о состоянии заказов на текущую дату по группам изделий.

- отсортированную в алфавитном порядке информацию о марке изделия по введенной группе Х.

15

  1. Создать файл, содержащий сведения о расписании вылета самолетов. Структура записи: номер рейса, тип самолета, пункт назначения, время вылета. Количество записей произвольное.

  2. Написать программу, которая выводит :

- какие рейсы выполняются на данном типе самолета Х;

- все номера рейсов, типы самолетов и времена вылета для заданного пункта назначения в порядке возрастания времени вылета.

16

  1. Создать файл, содержащий сведения об абитуриентов, сдавших вступительные экзамены в университет. Структура записи содержит: Ф.И.О., адрес, оценки по трем предметам. Количество записей произвольное.

  2. Написать программу, которая определяет:

- количество абитуриентов, проживающих в городе Х;

- абитуриентов, сдавших экзамены со средним баллом не ниже 4.5, вывести их фамилии в алфавитном порядке.

17

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

  2. Написать программу, которая позволяет:

-вывести информацию о наличии свободных мест на все поезда по введенной дате выезда;

- зарезервировать m мест до города N на k-й день недели с временем отправления поезда не позднее t часов вечера. Вывести время отправления или сообщение о невозможности выполнить заказ в полном объеме.

18

  1. Создать файл, содержащий сведения о сотрудниках предприятия. Структура записи содержит: Ф.И.О., номер отдела, должность, дату начала работы. Количество записей произвольное.

  2. Написать программу, которая выводит:

- фамилии сотрудников и номер отделения согласно введенной должности Х;

- списки сотрудников по отделам в порядке убывания стажа.

19

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

  2. Написать программу, которая вычисляет:

- общее количество выпущенной продукции А на заводе;

-для заданного цеха Х выводит количество выпущенных изделий по каждому наименованию в порядке убывания количества.

20

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

  2. Написать программу, которая выводит:

- список книг данного автора Х;

- список книг с фамилиями авторов в алфавитном порядке, изданных после заданного года.

21

  1. Создать файл, содержащий сведения об участниках спортивных соревнований. Структура записи: наименование страны, название команды, Ф.И.О. игрока, игровой номер, возраст, рост, вес. Количество записей произвольное.

  2. Написать программу, которая выводит:

- информацию о самом молодом игроке и в какой он команде,

-список игроков команды Х в порядке убывания их роста.

22

  1. Создать файл, содержащий сведения об участниках спортивных соревнований. Структура записи: наименование страны, название команды, Ф.И.О. игрока, игровой номер, возраст, рост, вес. Количество записей произвольное.

  2. Написать программу, которая выводит:

- информацию о том, в какой команде самый легкий игрок и его данные,

-список игроков команды Х в порядке возрастания их возраста.

23

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

  2. Написать программу, которая выводит размер заработной платы каждого сотрудника фирмы за вычетом подоходного налога, который составляет 12% от суммы заработка. Рабочее время свыше 144 часов считается сверхурочным и оплачивается в двойном размере.

24

1. Создать файл, содержащий сведения о разговорах на междугородной АТС . Структура записи содержит: дату разговора, код и название города, время разговора, тариф, номер телефона в этом городе и номер телефона абонента. Количество записей произвольное.

2. Написать программу, которая выводит:

- стоимость разговоров по данному номеру телефона за указанную дату;

- по каждому городу общее время разговоров с ним и сумму.

25

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

  2. Написать программу, которая выводит:

-список рейсов автобусов, которыми можно добраться до пункта Х;

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

Х, У- вводятся с клавиатуры.

26

  1. Создать файл, содержащий сведения о студентах для получения места в общежитии. Структура записи включает: Ф.И.О. студента, группу, средний балл, доход на члена семьи. Количество записей произвольное.

  2. Написать программу, которая выводит список очередности предоставления мест в общежитии. Общежитие в первую очередь предоставляется тем, у кого доход на члена семьи меньше двух минимальных зарплат, затем остальным в порядке уменьшения среднего балла.

27

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

  2. Написать программу, которая выводит:

-общую стоимость товаров с наименованием Х;

- в алфавитном порядке список товаров, хранящихся больше месяца, стоимость которых превышает 1000000 руб.

28

  1. Создать файл, содержащий сведения о гражданах нуждающихся в улучшении своих жилищных условий. Структура записи: ФИО, количество членов семьи, количество детей, размер занимаемой жилой площади, год становление на учет. Количество записей произвольное.

  2. Написать программу, которая выводит:

- список многодетных семей;

-список граждан ставших на учет до Х года в порядке возрастания занимаемого квадратного метра на члена семьи.

29

  1. Создать файл, содержащий сведения о спортсменах футбольной команды. Структура записи: ФИО, номер игрока, возраст, вес, рост. Количество записей произвольное.

  2. Написать программу, которая выводит:

- список игроков в порядке убывания их возраста;

- список игроков у которых вес превышает норму Х, а рост меньше, чем У.

Х, У- вводятся с клавиатуры.

30

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

  2. Написать программу, которая выводит:

- команду, которая имеет больше всех поражений;

- табельную таблицу команд, расположив из в порядке убывания набранных очков. За 1 победу – 2 очка, за 1 ничью – 1 очко, за 1 проигрыш -0 очков.