1. Завдання
Дан файл, що складається відомості про власників автомобілів. Структура запису файлу:
· Прізвище та ініціали власника
· Марка автомобіля
· Номер автомобіля
Написати програму, яка друкує
? Прізвище власника автомобіля з заданим номером
? Прізвища власників та номери автомобіля даної марки (в алфавітному порядку)
? Кількість автомобілів кожної марки
2. Опис застосування
.1 Запуск програми
Запуск програми (файл proga.cpp) можна виконати з середовища TurboC 3.0 (або Dev-Cpp) або з командного рядка MSDOS, ввівши proga.exe
2.2 Вхідні дані
Вхідні дані програми знаходяться у створеному файлі. Число рядків у файлі - довільне. Кожен рядок містить інформацію про власників (до 17 символів), марку автомобілів (до 7 символів), номери автомобілів (6 символів). Приклад рядка файлу:
A.S. Nissan P990CC
Приклад вхідного файлу наведено в додатку 2. За запитом програми з клавіатури необхідно ввести номер пункту меню (див. розділ 2.3).
2.3 Вихідні дані
Програма виводить на екран меню, представлене на малюнку 1:
Рис.1
Привыборепункта2наэкранвыводитсясообщение:
Vveditenomermashini
Після введення номера машини наприклад P990CC виводиться результат представлений на малюнку 2:
Рис. 2
Приклади вихідних даних для інших пунктів меню див. у додатку 3.
2.4 Повідомлення програми
Нижче наводиться перелік можливих повідомлень програми:
. faila BAZA net
. Vibirete nomer punkta menu
. marki «...» net
. Dlya vihoda v menu najmite lubyu knopky
. vvedite nomer mashini
. Nomer vveden ne pravelno
. vvedite marku mashini
. Vvidite nomer ot 1 do 5
3. Опис програми
.1 Метод рішення задачі
Завдання можна розбити на чотири окремі підзадачі:
Виведення на екран вмісту файлу BAZA.txt
Пошук за номерами
Пошук власника і номери по марці
Кількість автомобілів кожної марки
Щоб користувач міг вибирати, які підзадачі вирішувати і в якому порядку, програма виводить на екран меню (див. Рис. 1).
3.2 Структура програми
Рис.3. Функціональна структура програми
Програма складається з шести функцій: головної функції main і п'яти підпрограм:
SORT - сортування файлу за часом відправлення
PUN1 - функція виведення файлу по десять строк- функція виведення інформації про власника і марці- функція виведення інформації про власника і номері-функція виведення інформації про кількість кожної марки машин
3.3 Опис функцій
.3.1 main - головна функція
Заголовок функції:
intmain ()
Значення функції:
- в якщо вхідний файл не знайдений;
- у разі успішного завершення
Робочі дані:
f - покажчик на структуру з інформацією про вхідному файлі;
n - номер пункту меню.
Рис.4. Блок-схема функції main ()
3.3.2 PUN1- функція виведення файлу по десять рядків
Заголовокфункціі:
voidPUN1 (TAB * pz, intl);
Рис.5. Блок-схема функцііPUN1 (TAB * tab, intl)
3.3.3 PUN2 - функція виведення інформації про власника і марці
Заголовок функції: (TAB * tab, intl)
Робочі дані:
r-введений номер
i, j, p, u-лічильники
Ри...