Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика. Базовый курс. Ч.3. Основы алгоритмизации и про- граммирования в среде Visual C++ 2005.pdf
Скачиваний:
51
Добавлен:
05.02.2023
Размер:
3.81 Mб
Скачать

138

Практические задания

Раздел А

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

·формирование текстового файла, записав в него20 случайных чисел от –10 до +10, по одному на строке.

·Используя созданный выше файл как входной, сформировать выходной файл по указанному для каждого варианта правилу.

А16.1. Записать выходной файл, прибавив к каждому числу последнее число файла

А16.2. Записать выходной файл, разделив каждое число на полусумму первого отрицательного и 10-го числа файла

А16.3. Записать выходной файл, вычтя из каждого числа наибольшее число файла

А16.4. Записать выходной файл, умножив каждое число на минимальное число из файла.

А16.5. Записать выходной файл, разделив все нечетные по абсолютной величине числа на среднее арифметическое

А16.6. Записать выходной файл, вычтя из каждого числа сумму чисел файла.

А16.7. Записать выходной файл, умножив каждое третье число на удвоенную сумму первого и последнего отрицательных чисел.

А16.8. Записать выходной файл, добавив к каждому числу первое нечетное по абсолютной величине число файла.

А16.9. Записать выходной файл, умножив каждое четное число на первое отрицательное число файла.

А16.10. Записать выходной файл, добавив к каждому числу половину последнего отрицательного числа файла.

А16.11. Записать выходной файл, разделив все числа на половину максимального числа.

А16.12. Записать выходной файл, заменив все нули средним арифметическим.

А16.13. Записать выходной файл, заменив все положительные числа квадратом минимума.

А16.14. Записать выходной файл, добавив к каждому числу полусумму всех отрицательных чисел.

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

139

А16.16. Записать выходной файл, разделив каждое число на минимум и добавив максимум.

А16.17. Записать выходной файл, заменив все положительные числа на максимум.

А16.18. Записать выходной файл, заменив каждое четное число по абсолютной величине на разность максимума и минимума.

А16.19. Записать выходной файл, заменив каждое второе отрицательное число половиной максимума.

А16.20. Записать выходной файл, заменив каждое третье положительное число средним арифметическим отрицательных чисел.

А16.21. Записать выходной файл, заменив каждое положительное число средним арифметическим положительных чисел.

А16.22. Записать выходной файл, заменив каждое положительное число средним арифметическим отрицательных чисел.

А16.23. Записать выходной файл, заменив каждое отрицательное число средним арифметическим отрицательных чисел.

А16.24. Записать выходной файл, заменив каждое отрицательное число средним арифметическим положительных чисел.

А16.25. Записать выходной файл, заменив каждое положительное число этим же числом, разделенным на максимальное из всех чисел.

Раздел Б

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

Б16-1. Дана структура с именем STUDENT, состоящая из полей:

·Фамилия и инициалы,

·Номер группы,

·Успеваемость (массив из пяти элементов)

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

·Ввод с клавиатуры данных в массив, состоящий из 10 структур типа STUDENT, и занесение их в файл данных

·Чтение данных из файла и вывод их на экран

·вывод на экран фамилий и номеров групп для всех студентов, включенных в массив, если средний балл студента больше 4 (если таких нет – вывести об этом сообщение)

140

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

Б16-2. Дана структура с именем STUDENT, состоящая из полей: ·Фамилия и инициалы, ·Номер группы,

·Успеваемость (массив из пяти элементов)

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

типа STUDENT, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран фамилий и номеров групп для всех студентов, имеющих оценки 4 и 5 (если таких нет – вывести об этом сообщение)

·Список студентов должен быть упорядочен по убыванию среднего балла.

Б16-3. Дана структура с именем STUDENT, состоящая из полей: ·Фамилия и инициалы, ·Номер группы,

·Успеваемость (массив из пяти элементов)

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

типа STUDENT, и занесение их в файл данных ·Чтение данных из файла и и вывод их на экран

·вывод на экран фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2 (если таких нет – вывести об этом сообщение)

·Список студентов должен быть упорядочен по алфавиту -фа милий.

Б16-4.Дана структура с именем AEROFLOT, состоящая из полей: ·Название пункта назначения рейса, ·Номер рейса, ·Тип самолета

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 7 элементов

типа AEROFLOT, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран номеров рейсов и типов самолетов, вылетающих в пункт назначения, название которого совпало с названием,

141

введенным с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по возрастанию номера рейса. Б16-5.Дана структура с именем AEROFLOT, состоящая из полей: ·Название пункта назначения рейса, ·Номер рейса, ·Тип самолета

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 7 элементов

типа AEROFLOT, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран пунктов назначения и номеров рейсов, обслуживаемых самолетом, тип которого введен с клавиатуры(если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту названий пунктов назначения.

Б16-6. Дана структура с именем WORKER, состоящая из полей: ·Фамилия и инициалы работника, ·Название занимаемой должности, ·Год поступления на работу

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 10 элемен-

тов типа WORKER, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран фамилий работников, чей стаж работы в организации превышает значение, введенное с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту фамилий. Б16-7. Дана структура с именем TRAIN, состоящая из полей: ·Название пункта назначения, ·Номер поезда, ·Время отправления

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа TRAIN, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о поездах, отправляющихся после введенного с клавиатуры времени (если таких нет – вывести об этом сообщение)

142

·Список должен быть упорядочен по алфавиту пунктов назначения.

Б16-8. Дана структура с именем TRAIN, состоящая из полей: ·Название пункта назначения, ·Номер поезда, ·Время отправления

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 6 элементов

типа TRAIN, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о поездах, отправляющихся в пункт, название которого введено с клавиатуры(если таких нет– вывести об этом сообщение)

·Список должен быть упорядочен по времени отправления поезда.

Б16-9. Дана структура с именем TRAIN, состоящая из полей: ·Название пункта назначения, ·Номер поезда, ·Время отправления

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа TRAIN, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о поезде, номер которого введен с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по номерам поездов. Б16-10. Дана структура с именем MARSH, состоящая из полей: ·Название начального пункта назначения, ·Название конечного пункта назначения, ·Номер маршрута

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа MARSH, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о маршруте, номер которого введен с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по номерам маршрутов. Б16-11. Дана структура с именем MARSH, состоящая из полей: ·Название начального пункта назначения,

143

·Название конечного пункта назначения, ·Номер маршрута

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа MARSH, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о маршрутах, которые начинаются или заканчиваются в пункте, название которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по номерам маршрутов. Б16-12. Дана структура с именем NOTE, состоящая из полей: ·Фамилия, имя, ·Номер телефона,

·Дата рождения (массив из трех чисел)

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа NOTE, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о человеке, номер телефона которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по датам рождения. Б16-13. Дана структура с именем NOTE, состоящая из полей: ·Фамилия, имя, ·Номер телефона,

·Дата рождения (массив из трех чисел)

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа NOTE, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о людях, чьи дни рождения приходятся на месяц, значение которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту.

Б16-14. Дана структура с именем NOTE, состоящая из полей: ·Фамилия, имя, ·Номер телефона,

·Дата рождения (массив из трех чисел)

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

144

·Ввод с клавиатуры данных в массив, состоящий из 8 элементов типа NOTE, и занесение их в файл данных

·Чтение данных из файла и вывод их на экран ·вывод на экран информации о человеке, чья фамилия введена с

клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по двум первым цифрам номера телефона.

Б16-15. Дана структура с именем ZNAK, состоящая из полей: ·Фамилия, имя, ·Знак Зодиака,

·Дата рождения (массив из трех чисел)

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа ZNAK, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о человеке, чья фамилия введена с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по датам рождения. Б16-16. Дана структура с именем ZNAK, состоящая из полей: ·Фамилия, имя, ·Знак Зодиака,

·Дата рождения (массив из трех чисел)

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа ZNAK, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о людях, родившихся под знаком, название которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по датам рождения. Б16-17. Дана структура с именем ZNAK, состоящая из полей: ·Фамилия, имя, ·Знак Зодиака,

·Дата рождения (массив из трех чисел)

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа ZNAK, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

145

·вывод на экран информации о людях, родившихся в месяц, значение которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по знакам Зодиака. Б16-18. Дана структура с именем PRICE, состоящая из полей: ·Название товара, ·Название магазина, в котором продается товар, ·Стоимость товара в руб.

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа PRICE, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о товаре, название которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту названий товара. Б16-19. Дана структура с именем PRICE, состоящая из полей: ·Название товара, ·Название магазина, в котором продается товар, ·Стоимость товара в руб.

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа PRICE, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о товарах, продающихся в магазине, название которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

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

Б16-20. Дана структура с именем ORDER, состоящая из полей: ·Расчетный счет плательщика, ·Расчетный счет получателя, ·Перечисляемая сумма в руб.

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа ORDER, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран информации о сумме, cнятой с расчетного счета плательщика, введенного с клавиатуры (если таких нет – вывести об этом сообщение)

146

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

Б16-21. Дана структура с именем BOOKS, состоящая из полей: ·Автор книги, ·Название книги, ·Место издания ·Издательство ·Год издания

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа BOOKS, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран книг автора, который введен с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту названий издательств.

Б16-22. Дана структура с именем BOOKS, состоящая из полей: ·Автор книги, ·Название книги, ·Место издания ·Издательство ·Год издания

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа BOOKS, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран книг издательства, название которого введено с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту фамилий авторов. Б16-23. Дана структура с именем BOOKS, состоящая из полей: ·Автор книги, ·Название книги, ·Место издания ·Издательство ·Год издания

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа BOOKS, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

147

·вывод на экран книг, изданных после года, который введен с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту названий книг. Б16-24. Дана структура с именем BOOKS, состоящая из полей: ·Автор книги, ·Название книги, ·Место издания ·Издательство ·Год издания

Написать программу, которая выполняет следующие действия: ·Ввод с клавиатуры данных в массив, состоящий из 8 элементов

типа BOOKS, и занесение их в файл данных ·Чтение данных из файла и вывод их на экран

·вывод на экран книг, изданных в городе, который введен с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по годам издания. Б16-25.Дана структура с именем SOTRUD, состоящая из полей: ·Фамилия, имя сотрудника ·Должность, ·Год рождения

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

·Ввод с клавиатуры данных в массив, состоящий из 8 элементов типа SOTRUD, и занесение их в файл данных

·Чтение данных из файла и вывод их на экран ·вывод на экран сведений сотрудников, которые имеют стаж

работы, больший введенного с клавиатуры (если таких нет – вывести об этом сообщение)

·Список должен быть упорядочен по алфавиту фамилий.