Тема 4. Ссылочный тип данных. Домашняя контрольная работа по курсу «Основы алгоритмизации и программирования». Каждая тема содержит 20 задач, номера вариантов приведены в конце заданий. Тема 1. Массивы. Вариант 1. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму отрицательных элементов массива; 2) произведение элементов массива, расположенных между максимальным и минимальным элементами. Упорядочить элементы массива по возрастанию. Вариант 2. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму положительных элементов массива; 2) произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами. Упорядочить элементы массива по убыванию. Вариант 3. В одномерном массиве, состоящем из n целых элементов, вычислить: 1) произведение элементов массива с четными номерами; 2) сумму элементов массива, расположенных между первым и последним нулевыми элементами. Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом – все отрицательные (элементы, равные 0, считать положительными). Вариант 4. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму элементов массива с нечетными номерами; 2) сумму элементов массива, расположенных между первым и последним отрицательными элементами. Сжать массив, удалив из него все элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями. Вариант 5. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) максимальный элемент массива; 2) сумму элементов массива, расположенных до последнего положительного элемента. Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]. Освободившиеся в конце массиве элементы заполнить нулями. Вариант 6. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) минимальный элемент массива; 2) сумму элементов массива, расположенных между первым и последним положительными элементами. Преобразовать массив таким образом, чтобы сначала располагались все элементы, равные нулю, а потом – все остальные. Вариант 7. В одномерном массиве, состоящем из n целых элементов, вычислить: 1) номер максимального элемента массива; 2) произведение элементов массива, расположенных между первым и вторым нулевыми элементами. Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в нечетных позициях, а во второй половине – элементы, стоявшие в четных позициях. Вариант 8. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) номер минимального элемента массива: 2) сумму элементов массива, расположенных между первым и вторым отрицательными элементами. Преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых не превышает 1, а потом – все остальные. Вариант 9. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) максимальный по модулю элемент массива; 2) сумму элементов массива, расположенных между первым и вторым положительными элементами. Преобразовать массив таким образом, чтобы элементы, равные нулю, располагались после всех остальных. Вариант 10. В одномерном массиве, состоящем из n целых элементов, вычислить: 1) минимальный по модулю элемент массива; 2) сумму модулей элементов массива, расположенных после первого элемента, равного нулю. Преобразовать массив таким образом, чтобы первой его половине располагались элементы, стоявшие в четных позициях, а во второй половине – элементы, стоявшие в нечетных позициях. Вариант 11. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) номер минимального по модулю элемента массива; 2) сумму модулей элементов массива, расположенных после первого отрицательного элемента. Сжать массив, удалив из него все элементы, величина которых находится в интервале [a,b]. Освободившиеся в конце массива элементы заполнить нулями. Вариант 12. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) номер максимального по модулю элемента массива; 2) сумму элементов массива, расположенных после первого положительного элемента. Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале [a,b], а потом – все остальные. Вариант 13. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество элементов массива, лежащих в диапазоне от А до В; 2) сумму элементов массива, расположенных после максимального элемента. Упорядочить элементы массива по убыванию модулей элементов. Вариант 14. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество элементов массива, равных 0; 2) сумму элементов массива, расположенных после минимального элемента. Упорядочить элементы массива по возрастанию модулей элементов. Вариант 15. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество элементов массива, больших С; 2) произведение элементов массива, расположенных после максимального по модулю элемента. Преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы. А потом – все положительные (элементы, равные 0, считать положительными). Вариант 16. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество отрицательных элементов массива; 2) сумму модулей элементов массива, расположенных после минимального по модулю элемента. Заменить все отрицательные элементы массива их квадратами и упорядочить элементы массива по возрастанию. Вариант 17. В одномерном массиве, состоящем из n целых элементов, вычислить: 1) количество положительных элементов массива; 2) сумму элементов массива, расположенных после последнего элемента, равного нулю. Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом – все остальные. Вариант 18. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество элементов массива, меньших С; 2) сумму целых частей элементов массива, расположенных после последнего отрицательного элемента. Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более чем на 20%, а потом – все остальные. Вариант 19. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) произведение отрицательных элементов массива; 2) сумму положительных элементов массива, расположенных до максимального элемента. Изменить порядок следования элементов в массиве на обратный. Вариант 20. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) произведение положительных элементов массива; 2) сумму элементов массива, расположенных до минимального элемента. Упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах. Тема 2. Строки и Файлы. Вариант 1. Написать программу, которая считывает из текстового файла три предложения и выводит их в обратном порядке. Вариант 2. Написать программу, которая считывает текст из файла и выводит на экран только предложения, содержащие введенное с клавиатуры слово. Вариант 3. Написать программу, которая считывает текст из файла и выводит на экран только строки, содержащие двузначные числа. Вариант 4. Написать программу, которая считывает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв. Вариант 5. Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые два соседних слова. Вариант 6. Написать программу, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых. Вариант 7. Написать программу, которая считывает текст из файла и определяет, сколько в нем слов, состоящих из не более чем четырех букв. Вариант 8. Написать программу, которая считывает из файла и выводит на экран только цитаты, то есть предложения, заключенные в кавычках. Вариант 9. Написать программу, которая считывает из файла и выводит на экран только предложения, состоящие из заданного количества слов. Вариант 10. Написать программу, которая считывает английский текст из файла и выводит на экран слова текста, начинающиеся и оканчивающиеся на гласные буквы. Вариант 11. Написать программу, которая считывает из файла и выводит на экран только строки, не содержащие двузначных чисел. Вариант 12. Написать программу, которая считывает текст из файла и выводит на экран только предложения, начинающиеся с тире, перед которым могут находиться только пробельные символы. Вариант 13. Написать программу, которая считывает английский текст из файла и выводит его на экран, заменив каждую первую букву слов, начинающихся с гласной буквы, на прописную. Вариант 14. Написать программу, которая считывает текст из файла и выводит его на экран, заменив цифры от 0 до 9 на слова «ноль», «один», …, «девять», начиная каждое предложение с новой строки. Вариант 15. Написать программу, которая считывает текст из файла, находит самое длинное слово и определяет, сколько раз оно встретилось в тексте. Вариант 16. Написать программу, которая считывает текст из файла и выводит на экран сначала вопросительные, а затем восклицательные предложения. Вариант 17. Написать программу, которая считывает текст из файла и выводит на экран, после каждого предложения добавляя, сколько раз встретилось в нем введенное с клавиатуры слово. Вариант 18. Написать программу, которая считывает текст из файла и выводит на экран все его предложения в обратном порядке. Вариант 19. Написать программу, которая считывает текст из файла и выводит на экран сначала предложения, начинающиеся с однобуквенных слов, а затем все остальные. Вариант 20. Написать программу, которая считывает текст из файла и выводит на экран предложения, содержащие максимальное количество знаков пунктуации. Тема 3. Записи. Вариант 1. Описать запись с именем STUDENT, содержащую следующие поля: - фамилия и инициалы;
- номер группы;
- успеваемость (массив из пяти элементов).
Написать программу, выполняющие следующие действия: - ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по возрастанию номер группы;
- вывод на дисплей фамилий и номеров групп для всех студентов, включенных в массив, если средний балл студента больше 4.0;
- если таких студентов нет, вывести соответствующее сообщение.
Вариант 2. Описать запись с именем STUDENT, содержащие поля: - фамилия и инициалы;
- номер группы;
- успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по возрастанию среднего балла;
- вывод на дисплей фамилий и номеров групп для всех студентов, имеющих оценки 4 и5;
- если таких студентов нет, вывести соответствующее сообщение.
Вариант 3. Описать запись с именем STUDENT, содержащую следующие поля: - фамилия и инициалы;
- номер группы;
- успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT;записи должны быть упорядочены по алфавиту;
- вывод на дисплей фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2;
- если таких студентов нет, вывести соответствующее сообщение.
Вариант 4. Описать запись с именем AEROFLOT, содержащую следующие поля: - название пункта назначения рейса;
- номер рейса;
- тип самолета.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть упорядочены по возрастанию номера рейса;
- вывод на экран номеров рейсов и типов самолетов, вылетающих в пункт назначения, название которого совпало с названием, введенным с клавиатуры;
- если таких рейсов нет, выдать на дисплей соответствующее сообщение.
Вариант 5. Описать запись с именем AEROFLOT, содержащую следующие поля: - название пункта назначения рейса;
- номер рейса;
- тип самолета.
Написать программу, выполняющую следующие действия: § ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть размещены в алфавитном порядке по названиям пунктов назначения; § вывод на экран пунктов назначения и номеров рейсов, обслуживаемых самолетом, тип которого введен с клавиатуры; § если таких рейсов нет, выдать на дисплей соответствующее сообщение. Вариант 6. Описать запись с именем WORKER, содержащую следующие поля: - фамилия и инициалы работника;
- название занимаемой должности;
- год поступления на работу.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из десяти структур типа WORKER; записи должны быть размещены по алфавиту;
- вывод на дисплей фамилий работников, чей стаж работы в организации превышает значение, введенное с клавиатуры;
- если таких работников нет, вывести на дисплей соответствующее сообщение.
Вариант 7. Описать запись с именем TRAIN, содержащую следующие поля: - название пункта назначения;
- номер поезда;
- время отправления.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа TRAIN; записи должны быть размещены в алфавитном порядке по названиям пунктов назначения;
- вывод на экран информации о поездах, отправляющихся после введенного с клавиатуры времени;
- если таких поездов нет, выдать на дисплей соответствующее сообщение.
Вариант 8. Описать запись с именем TRAIN, содержащую следующие поля: - название пункта назначения;
- номер поезда;
- время отправления.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN; записи должны быть упорядочены по времени отправления поездов;
- вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры;
- если таких поездов нет, выдать на дисплей соответствующее сообщение.
Вариант 9. Описать запись с именем TRAIN, содержащую следующие поля: - название пункта назначения;
- номер поезда;
- время отправления.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа TRAIN; записи должны быть упорядочены по номерам поездов;
- вывод на экран информации о поезде, номер которого введен с клавиатуры;
- если таких поездов нет, выдать на дисплей соответствующее сообщение.
Вариант 10. Описать запись с именем MARSH, содержащую следующие поля: - название начального пункта маршрута;
- название конечного пункта маршрута;
- номер маршрута.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH; записи должны быть упорядочены по номерам маршрутов;
- вывод на экран информации о маршруте, номер которого введен с клавиатуры;
- если таких маршрутов нет, выдать на дисплей соответствующее сообщение.
Вариант 11. Описать запись с именем MARSH, содержащую следующие поля: - название начального пункта маршрута;
- название конечного пункта маршрута;
- номер маршрута.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH; записи должны быть упорядочены по номерам маршрутов;
- вывод на экран информации о маршрутах, которые начинаются или оканчиваются в пункте, название которого введено с клавиатуры;
- если таких маршрутов нет, выдать на дисплей соответствующее сообщение.
Вариант 12. Описать запись с именем NOTE, содержащую следующие поля: - фамилия, имя;
- номер телефона;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по датам рождения;
- вывод на экран информации о человеке, номер телефона которого введен с клавиатуры;
- если такого нет, выдать на дисплей соответствующее сообщение.
Вариант 13. Описать запись с именем NOTE, содержащую следующие поля: - фамилия, имя;
- номер телефона;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть размещены по алфавиту;
- вывод на экран информации о людях, чьи дни рождения приходятся на месяц, значение которого введено с клавиатуры;
- если таких нет, выдать на дисплей соответствующее сообщение.
Вариант 14. Описать запись с именем NOTE, содержащую следующие поля: - фамилия, имя;
- номер телефона;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по трем первым цифрам номера телефона;
- вывод на экран информации о человеке, чья фамилия введена с клавиатуры;
- если такого нет, выдать на дисплей соответствующее сообщение.
Вариант 15. Описать запись с именем ZNAK, содержащую следующие поля: - фамилия, имя;
- знак Зодиака;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK; записи должны быть упорядочены по датам рождения;
- вывод на экран информации о человеке, чья фамилия введена с клавиатуры;
- если такого нет, выдать на дисплей соответствующее сообщение.
Вариант 16. Описать запись с именем ZNAK, содержащую следующие поля: - фамилия, имя;
- знак Зодиака;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK; записи должны быть упорядочены по датам рождения;
- вывод на экран информации о людях, родившихся под знаком, название которого введено с клавиатуры;
- если таких нет, выдать на дисплей соответствующее сообщение.
Вариант 17. Описать запись с именем ZNAK, содержащую следующие поля: - фамилия, имя;
- знак Зодиака;
- дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK; записи должны быть упорядочены по знакам Зодиака;
- вывод на экран информации о людях, родившихся в месяц, значение которого введено с клавиатуры;
- если таких нет, выдать на дисплей соответствующее сообщение.
Вариант18. Описать запись с именем PRICE, содержащую следующие поля: - название товара;
- название магазина, в котором продается товар;
- стоимость товара в руб.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа PRICE; записи должны быть размещены в алфавитном порядке по названию товаров;
- вывод на экран информации о товаре, название которого введено с клавиатуры;
- если таких товаров нет, выдать на дисплей соответствующее сообщение.
Вариант 19. Описать запись с именем PRICE, содержащую следующие поля: - название товара;
- название магазина, в котором продается товар;
- стоимость товара в руб.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа PRICE; записи должны быть размещены в алфавитном порядке по названию магазинов;
- вывод на экран информации о товарах, продающихся в магазине, название которого введено с клавиатуры;
- если такого магазина нет, выдать на дисплей соответствующее сообщение.
Вариант 20. Описать запись с именем ORDER, содержащую следующие поля: - расчетный счет плательщика;
- расчетный счет получателя;
- перечисляемая сумма в руб.
Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ORDER; записи должны быть размещены в алфавитном порядке по расчетным счетам плательщиков;
- вывод на экран информации о сумме, снятой с расчетного счета плательщика, введенного с клавиатуры;
- если такого расчетного счета нет, выдать на дисплей соответствующее сообщение.
Тема 4. Ссылочный тип данных. Вариант 1. Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке. Сведения о каждом автобусе включают: - номер автобуса;
- фамилию и инициалы водителя;
- номер маршрута.
Программа должна обеспечивать: - начальное формирование данных обо всех автобусах в парке в виде списка;
- при выезде каждого автобуса из парка вводится номер автобуса, и программа удаляет данные об этом автобусе из списка автобусов, находящихся в парке, и записывает эти данные в список автобусов, находящихся на маршруте;
- при въезде каждого автобуса в парк вводится номер автобуса, и программа удаляет данные об этом автобусе из списка автобусов, находящихся на маршруте, и записывает эти данные в список автобусов, находящихся в парке;
- по запросу выдаются сведения об автобусах, находящихся в парке, или об автобусах, находящихся на маршруте.
Вариант 2. Составить программу, которая содержит текущую информацию о книгах в библиотеке. Сведения о книгах включают: - номер УДК;
- фамилию и инициалы автора;
- название;
- год издания;
- количество экземпляров данной книги в библиотеке.
Программа должна обеспечивать: - начальное формирование данных обо всех книгах в библиотеке в виде двоичного дерева;
- добавление данных о вновь поступивших книгах;
- удаление данных о списанных книгах;
- по запросу выдаются сведения о наличии книг в библиотеке.
Вариант 3. Составить программу, которая содержит текущую информацию о заявках на авиабилеты. Каждая заявка включает: Пункт назначения; Номер рейса; Фамилию и инициалы пассажиров; Желаемую дату вылета; Программа должна обеспечивать: Хранение всех заявок в виде списка; Добавление заявок в список; Удаление заявок; Вывод заявок по заданному номеру рейса и дате вылета; Вывод всех заявок. Вариант 4 Составить программу, которая содержит текущую информацию о заявках на авиабилеты. Каждая заявка включает: Пункт назначения; Номер рейса; Фамилию и инициалы пассажиров; Желаемую дату вылета; Программа должна обеспечивать: Хранение всех заявок в виде двоичного дерева; Добавление заявок ; Удаление заявок; Вывод заявок по заданному номеру рейса и дате вылета; Вывод всех заявок. Вариант 5 Составить программу, которая содержит текущую информацию о книгах в библиотеке. Сведения о книгах включают: - номер УДК;
- фамилию и инициалы автора;
- название;
- год издания;
- количество экземпляров данной книги в библиотеке.
Программа должна обеспечивать: - начальное формирование данных обо всех книгах в библиотеке в виде списка;
- добавление данных о вновь поступивших книгах;
- удаление данных о списанных книгах;
- по запросу выдаются сведения о наличии книг в библиотеке.
Вариант 6. Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке. Сведения о каждом автобусе включают: - номер автобуса;
- фамилию и инициалы водителя;
- номер маршрута.
Программа должна обеспечивать: - начальное формирование данных обо всех автобусах в парке в виде списка;
- при выезде каждого автобуса из парка вводится номер автобуса, и программа устанавливает значение признака «автобус на маршруте»;
- при въезде каждого автобуса в парк вводится номер автобуса и программа устанавливает значение признака «автобус в парке»;
- по запросу выдаются сведения об автобусах, находящихся в парке, или об автобусах, находящихся на маршруте.
Вариант 7. В файловой системе каталог файлов организован в виде линейного списка. Для каждого файла в каталоге содержатся следующие сведения: - имя файла;
- дата создания;
- количество обращений к файлу;
Написать программу, которая обеспечивает: - начальное формирование каталога файлов;
- вывод каталога файлов;
- удаление файлов, дата создания которых меньше заданной;
- выборку файла с наибольшим количеством обращений.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 8. Предметный указатель организован в виде линейного списка. Каждая компонента указателя содержит слово и номера страниц, на которых это слово встречается. Количество номеров страниц, относящихся к одному слову, лежит в диапазоне от одного до десяти. Написать программу, которая обеспечивает: - начальное формирование предметного указателя;
- вывод предметного указателя;
- вывод номеров страниц для заданного слова.
Программ должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 9. Текст помощи для некоторой программы организован в виде линейного списка. Каждая компонента текста помощи содержит термин (слово) и текст, содержащий пояснения к этому термину. Количество строк текста, относящихся к одному термину, составляет от одной до пяти. Написать программу, которая обеспечивает: - начальное формирование текста помощи;
- вывод текста помощи;
- вывод поясняющего текста для заданного термина.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 10. Картотека в бюро обмена квартир организована в виде линейного списка. Сведения о каждой квартире включают: - количество комнат;
- этаж;
- площадь;
- адрес;
Написать программу, которая обеспечивает: - начальное формирование картотеки;
- ввод заявки на обмен;
- поиск в картотеке подходящего варианта: при равенстве количества комнат и этажа и различии площадей в пределах 10% соответствующая карточка выводится и удаляется из списка, в противном случае поступившая заявка включается в список;
- вывод всего списка.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 11. Англо-русский словарь построен в виде двоичного дерева. Каждая компонента содержит английское слово, соответствующее ему русское слово и счетчик количества обращений к данной компоненте. Первоначально дерево формируется в порядке английского алфавита. В процессе эксплуатации словаря при каждом обращении к компоненте к счетчику обращений добавляется единица. Написать программу, которая: - обеспечивает начальный ввод словаря с конкретными значениями счетчиков обращений;
- формирует новое представление словаря в виде двоичного дерева по следующему алгоритму: а) в старом словаре ищется компонента с наибольшим значением счетчика обращений; б) найденная компонента заносится в новый словарь и удаляется из старого; в) переход к п. а) до исчерпания исходного словаря;
- производит вывод исходного и нового словарей.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 12. Анкета для опроса населения содержит две группы вопросов. Первая группа содержит сведения о респонденте: - возраст;
- пол;
- образование (начальное, среднее, высшее).
Вторая группа содержит собственно вопрос анкеты, ответом на который может являться либо ДА, либо НЕТ. Написать программу, которая: - обеспечивает начальный ввод анкет и формирует из них линейный список;
- на основе анализа анкет выдает ответы на следующие вопросы: а) сколько мужчин старше 40 лет, имеющих высшее образование, ответили ДА на вопрос анкеты; а) сколько женщин моложе 30 лет, имеющих среднее образование, ответили НЕТ на вопрос анкеты; а) сколько мужчин моложе 25 лет, имеющих начальное образование, ответили ДА на вопрос анкеты;
- производит вывод всех анкет и ответов на вопросы.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 13. Написать программу, которая содержит текущую о книгах в библиотеке. Сведения о книгах включат: - номер УДК;
- фамилия и инициалы автора;
- название;
- год издания;
- количество экземпляров данной книги в библиотеке.
Программа должна обеспечивать: - начальное формирование данных о всех книгах в библиотеке в виде списка;
- добавление данных о книгах, вновь поступающих в библиотеку;
- удаление данных о списываемых книгах;
- по запросу выдаются сведения о наличии книг в библиотеке, упорядоченные по годам издания.
Вариант 14. На междугородной телефонной станции картотека абонентов, содержащая сведения о телефонах и их владельцах, организована в виде линейной списка. Написать программу, которая: - обеспечивает начальное формирование картотеки в виде линейного списка;
- производит вывод всей картотеки;
- вводит номер телефона и время разговора;
- выводит извещение на оплату телефонного разговора.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 15. На междугородной телефонной станции картотека абонентов, содержащая сведения о телефонах и их владельцах, организована в виде двоичного дерева. Написать программу, которая: - обеспечивает начальное формирование картотеки в виде линейного списка;
- производит вывод всей картотеки;
- вводит номер телефона и время разговора;
- выводит извещение на оплату телефонного разговора.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 16. Автоматизированная информационная система на железнодорожном вокзале содержит сведения об отправлении поездов дальнего следования. Для каждого поезда указывается: - номер поезда;
- станция назначения;
- время отправления.
Данные в информационной системе организованы в виде линейного списка. Написать программу, которая: - обеспечивает первоначальный ввод данных в информационную систему и формирование линейного списка;
- производит вывод всего списка;
- вводит номер поезда и выводит все данные об этом поезде;
- вводит название станции назначения и выводит данные обо всех поездах, следующих до этой станции.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе. Вариант 17. Автоматизированная информационная система на железнодорожном вокзале содержит сведения об отправлении поездов дальнего следования. Для каждого поезда указывается: - номер поезда;
- станция назначения;
- время отправления.
Данные в информационной системе организованы в виде двоичного дерева. Написать программу, которая: - обеспечивает первоначальный ввод данных в информационную систему и формирование двоичного дерева;
- производит вывод всего дерева;
- вводит номера поезда и выводит все данные об этом поезде;
- вводит название станции назначения и выводит данные о всех поездах, следующих до этой станции.
Вариант 18. Пусть дан текстовый файл. Создать двусвязный список, каждый элемент которого содержит количество символов в соответствующей строке текста: Найти минимальную и максимальную строки текста Вариант 19. Пусть дан список студентов. Для каждого студента указывается: - ФИО студента;
- № группы;
- № курса.
- Оценки по 4 экзаменам последней сессии;
Данные в информационной системе организованы в виде списка. Написать программу, которая: - обеспечивает первоначальный ввод данных в информационную систему и формирование списка;
- производит вывод всего списка;
- упорядочить список по алфавиту и удалить фамилии студентов, начинающиеся на букву “П”.;
- выводит информацию о начислении стипендии, учитывая, что отличники получают-S1, хорошисты-S2.
Вариант 20. Пусть в файле хранятся записи со сведениями об автомобилях и их владельцах (марка, номер ГАИ, фамилия владельца); Данные в информационной системе организованы в виде списка. Написать программу, которая: - обеспечивает первоначальный ввод данных в информационную систему и формирование списка;
- для каждой марки автомобиля составить список, содержащий фамилии владельцев автомобилей данной марки;
- для каждой фамилии владельца составить список , содержащий информацию об автомобилях данного владельца;
№ варианта | № задач, соответствующие варианту | 1 тема | 2 тема | 3 тема | 4 тема | 1 Бровкин Сергей | | | | | 2 Баранова Александра | | | | | 3 Вирясов Андрей | | | | | 4 Гридин Дмитрий | | | | | 5 Гусев Михаил | | | | | 6 Гуслева Юлия | | | | | 7 Дешевых Наталья | | | | | 8 Ерин Леонид | | | | | 9 Золотарев Дмитрий | | | | | 10 Казаков Владислав | | | | | 11 Кашников Андрей | | | | | 12 Литосов Роман | | | | | 13 Лобанов Олег | | | | | 14 Маслов Алексей | | | | | 15 Мозжаков Сергей | | | | | 16 Назарьев Максим | | | | | 17 Овсянников Никита | | | | | 18 Олейников Евгений | | | | | 19 Пашовкин Альберт | | | | | 20 Швачун Денис | | | | | 21 Фоменко Андрей | | | | | 22Фурсова Елена | | | | | 23 Яковлев Денис | | | | | | | | | | | | | | | |