Вариант 6
Задание 6 Строки и файлы
Написать программу, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых.
Задание 7 Структуры
Логически законченные фрагменты оформите в виде подпрограмм, все необходимые данные которым передаются через список параметров. Использования глобальных переменных следует избегать.
В текстовом файле хранится список товаров. Для каждого товара указаны его название, стоимость единицы товара в тыс. руб., количество и единица измерения (например, 100 шт., 20 кг).
Написать программу, содержащую меню и выполняющую следующие действия:
корректировку или дополнение списка с клавиатуры;
сортировку по названию товара или по общей стоимости;
вывод информации о товаре, название которого введено с клавиатуры;
запись списка в файл под тем же или новым именем.
Задание 8 Функции и файлы
Для хранения данных о сканерах описать структуру вида:
scan_info = record
model : string[25];// наименование модели
price : integer; // цена
x_size, y_size: real;// горизонтальный и вертикальный размер области сканирования
optr : integer; // оптическое разрешение
grey : integer; // число градаций серого
end;
Написать подпрограмму, которая динамически выделяет память под массив структур, заполняет его данными в режиме диалога и записывает массив в бинарный файл. Структура файла: в первых двух байтах размещается значение типа word, определяющее количество сделанных в файл записей; далее без пропусков размещаются записи о сканерах.
Написать функцию, которая запрашивает данные о сканере в режиме диалога и замещает записи в бинарном файле по заданному номеру. Обязательный параметр – номер замещаемой записи. Функция должна возвращать нулевое значение, если запись прошла успешно, и –1 в противном случае.
Все необходимые данные для подпрограмм должны передаваться им в качестве параметров. Использование глобальных переменных в подпрограммах запрещается.
Задание 9 Работа со строками
С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000 символов (длина одной строки не должна превышать 70 символов).
Написать программу, которая:
выводит текст на экран;
по нажатию произвольной клавиши выделяет поочередно каждое слово текста, начинающееся на гласную букву;
определяет количество слов в тексте, начинающихся на гласную букву.
Задание 10 Динамические структуры данных
Логически законченные фрагменты оформите в виде подпрограмм, все необходимые данные которым передаются через список параметров. Использования глобальных переменных следует избегать.
Составьте программу, включающую меню, которая содержит динамическую информацию о наличии автобусов в автопарке. Предусмотрите контроль ошибок пользователя при вводе данных.
Сведения о каждом автобусе содержат:
номер автобуса;
фамилию и инициалы водителя;
номер маршрута;
признак того, где находится автобус – на маршруте или в парке.
Программа должна обеспечивать следующие функциональные возможности:
начальное формирование данных о всех автобусах в виде списка;
при выезде каждого автобуса из парка вводится номер автобуса, и программа устанавливает значение признака «автобус на маршруте»;
при въезде каждого автобуса в парк вводится номер автобуса, и программа устанавливает значение признака «автобус в парке»;
по запросу выдаются сведения об автобусах, находящихся в парке, или об автобусах, находящихся на маршруте.
Задание 11 Классы
В программе предусмотрите меню, содержащее команды для проверки всех возможных действий с заданным объектом.
Составить описание класса для объектов-векторов, задаваемых координатами их концов в 3-мерном пространстве. Обеспечить операцию сложения и вычитания векторов с получением нового вектора (суммы или разности), вычисления скалярного произведения двух векторов, длины вектора, косинуса угла между векторами.
Написать программу, демонстрирующую работу с этим классом.