
- •Технологии программирования
- •Содержание
- •Линейные алгоритмы
- •1.1. Примеры решения заданий
- •1.2. Задания для самостоятельного решения
- •1.3. Задания для контрольной работы
- •Алгоритмы с разветвлениями
- •2.1. Примеры решения заданий
- •2.2. Задания для самостоятельного решения
- •2.3. Задания для контрольной работы
- •Алгоритмы с циклами
- •3.1. Примеры решения заданий
- •3.2. Задания для самостоятельного решения
- •3.3. Задания для контрольной работы
- •Одномерные массивы
- •4.1. Примеры решения заданий
- •4.2. Задания для самостоятельного решения
- •4.3. Задания для контрольной работы
- •Двумерные массивы
- •5.1. Примеры решения заданий
- •5.2. Задания для самостоятельного решения
- •5.3. Задания для контрольной работы
- •6.1. Примеры решения заданий
- •6.2. Задания для самостоятельного решения
- •6.3. Задания для контрольной работы
- •7.1. Примеры решения заданий
- •7.2. Задания для самостоятельного решения
- •7.3. Задания для контрольной работы
- •8.1. Примеры решения заданий
- •8.2. Задания для самостоятельного решения
- •8.3. Задания для контрольной работы
- •Контрольная работа
- •Список использованных источников
8.2. Задания для самостоятельного решения
Задача 1. Имеется файл базы данных отдела кадров предприятия, состоящая из записей о сотрудниках. Формат записи: фамилия и инициалы (30 позиций, фамилия должна начинаться с первой позиции), год рождения (5 позиций), оклад (10 позиций). Написать программу, которая по заданному началу фамилии выводит на экран сведения о сотрудниках, подсчитывая средний оклад всех запрошенных сотрудников.
Задача 2. В салоне связи список имеющихся в наличии сотовых телефонов хранится в виде файла с записями о каждой модели телефона, для которой указывается наименование (20 позиций), вес в граммах и цена. Требуется написать программу, выполняющую вывод на экран информации о моделях, попадающих в заданный пользователем диапазон цен и весом менее 500 грамм.
Задача 3. База данных библиотеки хранится в виде файла с запиями, где указаны наименование книги (30 позиций), фамилия и инициалы автора (авторов – 20 позиций), издательство (20 позиций) и покупная цена. Вывести на экран список книг заданного автора, исключая заданное пользователем издание.
Задача 4. Дан список группы вида
-
Фамилия И.О.
Год рождения
Иванов И.И.
1977
Сидоров М.М.
1978
Михайлов А.А.
1977
в файле записей. Отсортировать список в алфавитном порядке.
8.3. Задания для контрольной работы
Вариант 1.
Сводная ведомость результатов экзаменационной сессии студенческой группы хранится в виде файла с записями и для каждого студента содержит фамилию, инициалы и оценки по пяти предметам.
Составить программу, с помощью которой можно формировать список и получать:
список студентов, сдавших экзамены только на «отлично»;
список студентов, имеющих тройки;
список студентов, имеющих двойки, при этом студент, имеющий более чем одну двойку, исключается из списка.
Вариант 2
Предприятие имеет местную телефонную станцию на 20 номеров. Телефонный справочник данного предприятия для каждого номера телефона содержит номер помещения и список служащих, сидящих в данном помещении.
Составить программу, которая:
□ позволяет вносить в базу новые записи;
□ по номеру телефона выдает номер помещения и список сидящих в нем людей;
□ по номеру помещения выдает номер телефона;
□ по фамилии выдает номер телефона и номер помещения.
Вариант 3
В гостинице имеется 15 номеров, из них 5 одноместных и 10 двухместных. Составить программу, которая заполняет данные о жильцах и по фамилии определяет номер проживания жильца. Программа запрашивает фамилию жильца.
если жильца с такой фамилией нет, об этом выдается сообщение.
если жилец с такой фамилией в гостинице единственный, программа выдает фамилию жильца и номер проживания.
если в гостинице проживают два или более жильцов с такой фамилией, программа дополнительно запрашивает инициалы.
Вариант 4
Список служащих хранится в виде файла записей. Для каждого служащего указаны фамилия и инициалы, название занимаемой должности, год поступления на работу и оклад.
Написать программу, выполняющую:
ввод данных в список с клавиатуры;
вывод на экран информации о служащем, фамилия которого введена с клавиатуры;
вывод на экран информации о служащих с должностью «менеджер», стаж которых – более четырех лет;
вывод на экран информации о служащем, имеющим наибольший оклад.
Вариант 5
Расписание электричек хранится в виде файла записей. Каждая запись содержит название пункта назначения, пометки типа «СВ», «ПВ», «КСВ» и время отправления. Написать программу, выполняющую:
ввод расписания с клавиатуры;
вывод на экран информации о поездах типа «СВ», отходящих после введенного времени;
вывод на экран информации о поездах типа «ПВ», отправляющихся в пункт назначения «Москва»;
Вариант 6
В записи хранится список товаров. Для каждого товара указаны его название, стоимость единицы товара в тыс. руб., количество и единица измерения (например, 100 шт., 20 кг).
Написать программу, выполняющую:
ввод списка с клавиатуры;
вывод на экран информации о товаре, название которого введено с клавиатуры;
вывод на экран информации о штучном товаре в диапазоне цен от 100 до 300 тыс. руб.;
Вариант 7
В файле записей хранится список автомобилей. Для каждого автомобиля указаны его модель, название автосалона, в котором продается автомобиль, стоимость в тыс. руб. и их количество.
Написать программу, выполняющую:
корректировку или дополнение списка с клавиатуры;
вывод на экран информации об автомобилях автосалона «Сапсан» стоимостью более 400 тыс. руб.
вывод на экран информации об автомобилях модели «Renault» стоимостью не более 400 тыс. руб.
Вариант 8
Список студенческой группы указан в виде файла записей. Каждая строка записи содержит фамилию студента и три экзаменационные оценки, причем список никак не упорядочен. Составить программу, которая сортирует его либо по среднему баллу, либо по алфавиту, либо по оценкам по заданному предмету.
Вариант 9
В файле записей хранится список товаров. Для каждого товара указаны его название, название магазина, в котором продается товар, стоимость товара в тыс. руб. и его количество с указанием единицы измерения (например, 100 шт., 20 кг).
Написать программу, выполняющую:
ввод списка с клавиатуры;
сортировку по названию товара или по названию магазина;
вывод на экран информации о товаре, название которого введено с клавиатуры;
Вариант 10
1. Описать файл записей с именем route.dat, содержащий следующие поля: номер маршрута, название начального пункта маршрута; название конечного пункта маршрута, длину маршрута;
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Route;
вывод на экран информации о маршрутах с конечным пунктом «Казань»; если таких маршрутов нет – предусмотреть соответствующее сообщение;
вывод на экран информации о маршрутах с длиной маршрута не более 100 км.; если таких маршрутов нет – предусмотреть соответствующее сообщение;
Вариант 11
1. Описать файл записей с именем note.dat, содержащий следующие поля: фамилия, имя, номер телефона, день рождения (массив из трех чисел).
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Note, с упорядочением записей по датам дней рождения;
вывод на экран информации о человеке, номер телефона которого введен с клавиатуры, а если такого нет - вывод на экран соответствующего сообщения;
Вариант 12
1. Описать файл записей с именем note.dat, содержащий следующие поля: фамилия, имя, номер телефона, день рождения (массив из трех чисел).
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Note, с упорядочением записей по алфавиту;
вывод на экран информации о людях, чьи дни рождения приходятся на месяц, значение которого введено с клавиатуры, а если таких нет - вывод на экран соответствующего сообщения;
Вариант 13
1. Описать запись с именем Note, содержащий следующие поля: фамилия, имя, номер телефона, день рождения (массив из трех чисел).
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Note, с упорядочением записей по трем первым цифрам номера телефона;
вывод на экран информации о человеке, чья фамилия введена с клавиатуры; если такого нет, вывод на экран соответствующего сообщения;
Вариант 14
1. Описать файл записей с именем zodiac.dat, содержащий следующие поля: фамилия, имя, знак Зодиака, день рождения (массив из трех чисел).
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Zodiac, с упорядочением записей по датам дней рождения;
вывод на экран информации о человеке, чья фамилия введена с клавиатуры; если такого нет, вывод на экран соответствующего сообщения;
вывод на экран информации о людях, родившихся под знаком, наименование которого введено с клавиатуры, а если таких нет - вывод на экран соответствующего сообщения;
Вариант 15
1. Описать файл записей с именем price.dat, содержащий следующие поля: название товара, название магазина, в котором продается товар, стоимость товара в рублях.
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Price с упорядочением записей в алфавитном порядке по названиям товаров;
вывод на экран информации о товаре, название которого введено с клавиатуры, а если таких товаров нет - вывод на экран соответствующего сообщения;
вывод на экран информации о товарах, продающихся в магазине, название которого введено с клавиатуры, а если такого магазина нет - вывод на экран соответствующего сообщения;
Вариант 16
1. Описать файл записей с именем bill.dat, содержащий следующие поля: расчетный счет плательщика, расчетный счет получателя; перечисляемая сумма в рублях.
2. Написать программу, выполняющую следующие действия:
ввод данных с клавиатуры в массив, состоящий из восьми элементов типа Bill, с упорядочением записей в алфавитном порядке по расчетным счетам плательщиков;
вывод на экран информации о сумме, снятой с расчетного счета плательщика, введенного с клавиатуры, а если такого расчетного счета нет - вывод на экран соответствующего сообщения;
Вариант 17
Создать файл записей «Автомобиль», включающий информацию: марка автомобиля, его цена, год выпуска, фамилия и адрес владельца. Найти информацию о самом дорогом и самом дешевом автомобиле, составить списки владельцев автомобилей данного комплекса, по фамилии владельца найти информацию о его автомобиле.
Вариант 18
Создать файл записей «Пациенты», включающий информацию: фамилия пациента, место проживания, диагноз. Определить количество иногородних пациентов с диагнозом Х. Составить списки пациентов из данного города.
Вариант 19
Создать файл записей «Завод», включающий информацию: фамилия сборщика, номер цеха, количество изделий категории A, B, C. Составить списки сборщиков по цехам. Определить, изделие какой категории собрано в большем количестве.
Вариант 20
Создать файл записей «Экспорт», включающий информацию: наименование товара, страна-поставщик, объем партии поставки. Составить списки стран по наименованиям поставляемого товара, определить, какой товар поставляется в большем количестве и в большее количество стран.