Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
s01_labs.doc
Скачиваний:
44
Добавлен:
04.06.2015
Размер:
177.66 Кб
Скачать

Вариант 27

В файле хранятся названия и года выхода фильмов в формате «Название (год выпуска)». Одна строка – один фильм. Вывести на экран список фильмов, отсортировав в обратном хронологическом порядке (по убыванию годов выпуска).

Вариант 28

В файле хранится список доменных имен интернета. Вывести на экран имена, принадлежащие зоне .ru. Вывод отсортировать в алфавитном порядке.

Вариант 29

В файле хранится список адресов электронной почты. Вывести на экран имена, записанные с ошибкой. Правильным считать имена, записанные в формате имя@сервер.ru. Например, имяivan.petrov@sfu-kras.ruявляется правильным, а имяivan.petrov@sfu-kras– ошибочным.

Вариант 30

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

Вариант 31

В файле хранится текст, содержащий положительные десятичные числа, разделенные пробелами. Вывести на экран а) слова, являющиеся правильной десятичной записью числа (1, 200, 8000), б) слова, являющиеся неправильной десятичной записью числа (1b2, 6-7).

Контрольные вопросы

  1. Для чего используются файлы?

  2. Перечислите функции для открытия файла, закрытия файла, чтения данных из файла.

  3. Как открыть файл на чтение? На запись? Как создать новый файл на диске?

  4. Как прочитать из файла текст заданной длины?

  5. Как узнать размер файла?

  6. Как прочитать из файла текст произвольной длины?

  7. Как реализовать одномерный массив, содержащий строки?

  8. Как выполнить сортировку массива строк в алфавитном порядке?

ГЛАВА 6. РАБОТА СО СТРУКТУРАМИ

Требования к выполнению заданий

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

Разработать программу, которая осуществляет следующие функции. Все функции (в т.ч. на 3 балла) должны быть реализованы через меню пользователя, для всех заданий использовать динамические массивы.

На оценку 3 балла:

а) ввод данных с клавиатуры (добавляя новые данные в массив),

б) удаление выбранного элемента массива;

в) вывод данных на экран (без сортировки).

На оценку 4 балла:

а) выполнить задание на оценку 3 балла;

б) реализовать запись данных в файл,

в) чтение данных из файла;

г) вывод данных на экран, отсортировав по одному из строковых полей.

На оценку 5 баллов:

а) выполнить требования на оценку 4 балла;

б) вывод данных на экран, отсортировав по любому из полей на выбор пользователя (в т.ч. по вычисляемому полю.

в) вывод данных дополнить вычисляемым на момент вывода информации полем согласно варианту.

Задания

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

  1. Фирмы: наименование, количество сотрудников, годовой оборот, ИНН. Дополнить вывод информацией о том, следует ли фирме предоставлять дополнительные формы годовой отчетности (оборот более 1 млн. руб.).

  1. Автомобили: марка, год выпуска, объем двигателя, пробег. Вывод данных дополнить напоминанием о прохождении ТО, если пробег автомобиля больше 100 тыс. км.

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

  1. Телевизоры: фирма производитель, длина диагонали, цвет корпуса, цена. Вывод данных дополнить информацией о том, подходит ли телевизор для установки в малогабаритных помещениях (диагональ 14” или менее).

  1. Сотовые телефоны: марка, модель, цена, год выпуска. Дополнить вывод информацией о новинках – телефонах, срок пребывания которых на рынке не превышает одного года.

  1. Продукты питания: наименование, вес, цена, срок годности. Дополнить вывод информацией о товарах, которые следует уценить (срок годности которых истекает через 2 дня или ранее).

  1. Книги: автор, наименование, количество страниц, цена. Дополнить вывод рекомендацией книг, которые можно прочитать за один вечер (количество страниц меньше 100).

  1. Города: Наименование, год основания, население, наличие метро. Дополнить вывод информацией о том, необходимо ли построить в городе метро (если население больше 1 млн. чел., и метро в городе отсутствует).

  1. Музыкальные произведения: исполнитель, наименование, дата выпуска, позиция в рейтинге. Дополнить вывод информацией о «горячих хитах» (произведения, выпущенные более трех месяцев назад, находящихся в двадцатке лучших).

  1. Пригородные поезда: время отправления, конечная станция, время в пути. Дополнить вывод вычисляемой информацией о времени прибытия на конечную станцию. Включить вычисляемое поле «время прибытия» в сортируемые поля.

  1. MP3 плееры: наименование, объем памяти, наличие радио, время разряда батарей. Дополнить вывод информацией о продолжительности звучания из расчета 60MBмузыки в час. Продолжительность звучания не должна превышать время разряда батарей.

  1. Автомобили: марка, год выпуска, объем двигателя, пробег. Дополнить вывод информацией о сумме налога на т.с. (до 100 л/с по 7 руб. за 1 л/с., от 100 до 250 л/с. по 14 руб. за л/с, более 250 л/с по 30 руб. за л/с).

  1. Сотрудники фирмы: ФИО, пол (м/ж), год рождения, месячная з/п. Дополнить данные информацией о сотрудниках, пенсионный возраст которых наступит в ближайшие 3 года (мужчины – 60 лет, женщины – 55 лет).

  1. Студенты: ФИО, номер зачетной книжки, год рождения, средний балл за последнюю сессию. Дополнить вывод данных информацией о размере стипендии: средний балл менее 4 – не платится, от 4 до 4.5 – обычная, от 4.5 до 5 – +50%, 5 – +100%.

  1. Аудитории: наименование учебного корпуса, номер аудитории, количество мест. Дополнить вывод данных информацией о том, подходит ли аудитория для проведения лекций (количество мест больше 50).

  2. ВУЗы: наименование, год открытия, количество факультетов, количество студентов. Дополнить вывод информацией о том, какие ВУЗы в этом году празднуют юбилей.

  1. Ноутбуки: производитель, диагональ монитора, цена. Дополнить вывод информацией о классе ноутбука (бюджетная модель при цене менее 30 тыс. руб, бизнес-класс от 30 до 60 т.р., премиум выше 60 тыс.).

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

  1. Продукты питания: наименование, вес, цена за кг, срок годности. Дополнить вывод информацией о стоимости товара (вес*цена за кг). Если срок годности товара истекает менее чем через сутки, то товар необходимо уценить вдвое.

  1. Результаты сессии: ФИО студента, оценки по математике, физике, программированию, истории. Дополнить вывод информацией о том, выплачивается ли студенту стипендия (средний балл >= 4).

  1. Судоходные реки: Название реки, протяженность, минимальная глубина фарватера. Дополнить вывод информацией о том, подходит ли река для судоходства большегрузных судов (минимальная глубина должна быть больше 4 м.)

  1. Аренда квартир: адрес, количество комнат, жилая площадь, наличие балкона. Дополнить вывод информацией о том, подходит ли квартира для проживания семьи из 3-х человек (муж, жена, ребенок). Обязательные условия: не менее 2-х комнат и площадь не менее 50 кв. м.

  1. Автомобили: марка, год выпуска, максимальная масса, количество пассажирских мест. Дополнить вывод информацией о том, можно ли управлять данным автомобилем, имея водительское удостоверение категории «B» (макс. масса должна быть меньше 3 т., количество пассажирских мест менее 8).

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

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

  1. Сотрудники: ФИО, год рождения, стаж работы, пол. Дополнить информацию данными о том, полагается ли сотруднику пенсия по возрасту (для мужчин 60 лет, для женщин – 55).

  1. Книга контактов: ФИО, номер телефона, домашний адрес, год рождения. Дополнить вывод информацией о контактах, у которых в этом году юбилей (возраст кратный 10, старше 21 года).

  1. Туристические маршруты: наименование пункта отправления, наименование пункта назначения, продолжительность в пути, требуется ли спец.снаряжение. Дополнить вывод информацией о том, подходит ли маршрут для неподготовленных туристов (пункт отправления и назначения должны совпадать, продолжительность пути не должна превышать 10 км, маршрут не должен требовать спец.снаряжения).

  1. Платежи: Имя плательщика, дата платежа, назначение платежа, сумма платежа. Дополнить вывод информацией о том, является ли платеж крупным (более 10 тыс. рублей), либо особо мелким (менее 10 рублей).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]