- •Розробка програмного продукту
- •Виконання схем алгоритмів та ієрархії класів
- •Зміст пояснювальної записки
- •1. Постановки задачі.
- •2. Аналіз задачі на можливість розв'язання.
- •3. Схема алгоритму.
- •7. Результати роботи програми.
- •8. Оцінка достовірності результатів.
- •9. Висновки.
- •Приклад курсової роботи
- •Постановка задачі
- •Опис структури файлів
- •2.3. Опис алгоритму
- •2.5. Опис функцій
- •2.6. Результат роботи програми
- •2.7. Висновки
- •3. Варіанти завдань
- •Додаток а. Зразок заяви на затвердження теми курсової роботи
- •Додаток б. Зразок оформлення титульної сторінки
- •Університет економіки та права «крок»
- •Завдання на курсову роботу студента
- •Додаток г. Зразок складання календарного плану виконання курсової роботи календарний план
- •Література
2.5. Опис функцій
Таблиця 1
№ |
Функція |
Призначення функції і параметрів |
1 |
MyObj.Dopusk() |
Функція-член класу Student, яка повертає 1, якщо студент має допуск до заліку чи іспиту (всі оцінки у масиві >2), в інших випадках повертає 0. |
2 |
strcmp(char*s1,char*s2) |
Повертає 0, якщо рядки s1 і s2 рівні. Повертає ціле число<0, якщо s1 < s2 і ціле число>0, якщо s1 > s2 в лексикографічному порядку. |
3 |
strtok(char*s1,char*s2) |
Виділяє з рядка s1 лексеми, розділені будь-яким з безлічі символів, що входять в рядок s2. |
4 |
strcpy(char*s1,char*s2) |
Копіює рядок s2 в рядок s1. |
5 |
swap(Student &a, Student &b) |
Міняє місцями об’єкти a і b класу Student |
6 |
atoi(char *s) |
Перетворює рядок символів s у ціле число. |
7 |
itoa(int n) |
Перетворює ціле число n у рядок символів. |
8 |
average(int *n) |
Перетворює ціле число, що є середнє арифметичне для масиву цілих чисел n[5]. |
|
|
|
2.6. Результат роботи програми
Тут має бути розміщено зміст вихідного файлу out.txt.
2.7. Висновки
Тестування програми на різних вхідних даних свідчить, що програма працює правильно. Недоліком програми є відсутність графічного інтерфейсу користувача, але консольний додаток, яким є дана програма, потребує менше обчислювальних ресур
3. Варіанти завдань
Таблиця 2
№ варіанта |
Зміст програми |
|
Диспетчер аеропорту. Структура має містити наступні поля:
Вивід на дисплей і у файл номерів рейсів і типів літаків, що вилітають в пункт призначення, назва якого вводиться з клавіатури. Записи мають бути впорядковані по зростанню вартості квітка. Вивести на дисплей і у файл назву компанії, що здійснює найдешевший рейс.
|
|
Диспетчер залізниці. Структура має містити наступні поля:
Вивід на дисплей і у файл всіх номерів потягів, що відправляються з 9:00 до 12:00 до пункту призначення, назва якого вводиться з клавіатури, та їх час в путі. Записи мають бути впорядковані по зростанню часу відправлення.
|
|
Розклад потягів. Структура має містити наступні поля:
вивід на дисплей і у файл всіх номерів потягів, що відправляються з 21:00 до 23:00 до пункту призначення, назва якого вводиться з клавіатури, та їх час в путі. Записи мають бути впорядковані по зростанню часу відправлення.
|
|
Деканат. ,Структура має містити наступні поля:
вивід на дисплей і у файл прізвищ і номерів груп для всіх студентів, включених у масив, якщо середній бал студента більше 4.0; вивести по групам списки студентів, що мають заборгованість (хоча б одну двійку) якщо таких студентів ні, вивести відповідне повідомлення.
|
|
Розрахунок економічності літаків. Структура має містити наступні поля:
вивід на дисплей і у файл дані про всі типи літаків та їх економічність. Записи мають бути впорядковані по зростанню економічності.
|
|
Розрахунок собівартості квітка на літак. Структура має містити наступні поля:
вивід на дисплей і у файл дані про всі типи літаків, вартість квітка та собівартість перевезення одного пасажира. Вартість одного літра пального ввести з клавіатури. Записи мають бути впорядковані по зростанню собівартості перевезення одного пасажира.
|
|
Записна книжка. Структура має містити наступні поля:
вивід на дисплей і у файл інформації о людях, дні народження яких приходяться на місяць, значення якого введено з клавіатури. Записи мають бути впорядковані по алфавіту.
|
|
Гороскоп. Структура має містити наступні поля:
вивід на дисплей і у файл інформації о людях, чий знак Зодіаку введено з клавіатури. Записи мають бути впорядковані по алфавіту.
|
|
Східний календар. , Структура має містити наступні поля:
вивід на дисплей і у файл інформації о людині, прізвище якої введено з клавіатури, а також всіх, хто народився у рік кота (наприклад). Записи мають бути впорядковані по алфавіту.
|
|
Компанії – аероперевізники. Структура має містити наступні поля:
Створення динамічного масиву об'єктів Aeroflot, розмірність якого дорівнює кількості рядків у файлі; вивід на дисплей і у файл номерів рейсів і типів літаків, що вилітають в пункт призначення, назва якого вводиться з клавіатури. Записи мають бути впорядковані по зростанню вартості квітка. Вивести на дисплей і у файл назву компанії, що здійснює найдешевший рейс відносно дальності.
|
|
Прайс-листи. Структура має містити наступні поля:назва товару;
вивід на дисплей і у файл назву магазинів, в яких продається товар, що вводиться з клавіатури. Записи мають бути впорядковані по зростанню ціни товару в грн. Вивести на дисплей і у файл назву магазину, де товар найдешевший.
|
|
Розрахунок ціноутворення в магазинах. Структура має містити наступні поля:
вивід на дисплей і у файл асортимент товарів магазину, назва якого вводиться з клавіатури. Записи мають бути впорядковані по зростанню ціни товару в грн. Вивести на дисплей інформацію, чи є завищеним курс долара відносно курсу НБУ (7.99 на 20.02.12)
|
|
Розрахунок зарплатні. Структура має містити наступні поля::
вивід на дисплей і у файл прізвищ і заробітків робітників, чий стаж роботи перевищує значення, що введено з клавіатури; якщо таких немає, вивести відповідне повідомлення.
|
|
Розрахунок зарплатні:
Створення динамічного масиву об'єктів Worker, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Worker; вивід на дисплей і у файл відомість по зарплаті, що містить прізвище, нарахована сума, сума, що утримана та сума к видачі. Записи мають бути впорядковані по алфавіту.
|
|
Описання класу на ім'я Organizer, що містить наступні властивості та методи:
Створення динамічного масиву об'єктів Organizer, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Organizer; вивід на дисплей і у файл інформації об іменинниках, чий день, місяць та рік народження були введені з клавіатури. Записи мають бути впорядковані по алфавіту;
|
|
Рекомендації діетолога:
Створення динамічного масиву об'єктів Pacient, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Pacient; вивід на дисплей і у файл інформації о пацієнтах, що мають зайву вагу а також о пацієнтах, що страждають на дистрофію. Записи мають бути впорядковані по алфавіту;
Яблонский |
|
Військовий облік:
вивід на дисплей і у файл інформації о війсково-зобов’язаних , що годні до служби. Записи мають бути впорядковані по алфавіту;
|
|
Надприбутки торговельних центрів:
читання з файлу in.txt даних у масив об’єктів Price; вивід на дисплей і у файл список магазинів, в яких „закрутка” перевищує значення, що введено з клавіатури. Записи мають бути впорядковані по алфавіту. Вивести на дисплей інформацію, о магазинах, де „закрутка” максимальна і мінімальна.
|
|
Бюро замовлень:
Створення динамічного масиву об'єктів Zakaz, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Zakaz; вивід на дисплей і у файл всіх замовлень, що мають бути виконані сьогодні. Параметр функції „сьогодні” вводиться з клавіатури. Записи мають бути впорядковані алфавіту.
|
|
Бюро обслуговування замовлень Описання класу на ім'я Zamovlenya, що містить наступні властивості:
Створення динамічного масиву об'єктів Zamovlenya, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Zamovlenya; вивід на дисплей і у файл всіх прострочених замовлень. Параметр функції „сьогодні” вводиться з клавіатури. Записи мають бути впорядковані по алфавіту.
|
|
Записна книжка Описання класу на ім'я Organizer, що містить наступні властивості та методи:
Створення динамічного масиву об'єктів Organizer, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Organizer; вивід на дисплей і у файл інформації об іменинниках, чий день народження через тиждень, сьогоднішнє число вводиться з клавіатури. Записи мають бути впорядковані по алфавіту;
|
|
Діагностика пацієнтів лікарні
Створення динамічного масиву об'єктів Pacient, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Pacient; вивід на дисплей і у файл інформації о пацієнтах, що мають зайву вагу а також о пацієнтах, що страждають на гіпертонію чи гіпотонію. Записи мають бути впорядковані по діагнозу;
Больбух |
|
Бібліотека, що містить наступні властивості:
Створення динамічного масиву об'єктів Library, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Library; вивід на дисплей і у файл прізвища всіх боржників, та суму боргу (пені) Параметр функції „сьогодні” вводиться з клавіатури. Записи мають бути впорядковані по алфавіту.
|
|
Словник-перекладач Структура «словник» повинна містити 2 поля: слово українською мовою та його переклад на мову L (це може бути молодіжний або професійний сленг або взагалі, мова гоблінів) Один текстовий файл являє собою словник, в якому слова та їх переклади розділені певним символом. Інший файл являє собою вихідний текст, який потрібно перекласти. Програма має створити новий файл з перекладом. Інтерфейс програми повинен передбачати можливість вибору: з якої мови на яку мову перекладати. |
|
Нарахування суми зарплатні Описання структури на ім'я Shabashnik, що містить наступні властивості та методи:
Створення динамічного масиву об'єктів Shabashnik, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Shabashnik; вивід на дисплей і у файл прізвищ і заробітків всіх шабашників, чия зарплатня нарахована перевищує значення, що введено з клавіатури. Записи мають бути впорядковані по алфавіту. Якщо таких немає, вивести відповідне повідомлення.
|
|
Описання структури на ім'я Paroplav, що містить наступні властивості:
Створення динамічного масиву об'єктів Paroplav, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Paroplav; вивід на дисплей і у файл пункти призначення, куди пароплав не прибуде, тому що перевантажений, а також назву компанії, що здійснює таку перевозку. Записи мають бути впорядковані по зростанню вартості квітка. Берегова |
|
Розрахунок прибутковості танкера
Танкер витрачає теж саме пальне, що і перевозить. Рейс буде прибутковим, якщо танкер витрачає менше ніж 20% пального, що перевозить. Створення динамічного масиву об'єктів Tanker, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Tanker; вивід на дисплей і у файл всі збиткові компанії за алфавітом.
|
|
Розрахунок плавучості суховантажного судна
Описання класу на ім'я Suhogruz, що містить наступні властивості:
функція, яка повертає 1, якщо пароплав не потоне (загальна вага вантажу перевищує водотоннажність), та 0 в інших випадках. Створення динамічного масиву об'єктів Suhogruz, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Suhogruz; вивід на дисплей і у файл пункти призначення, куди сухогруз не прибуде, тому що не допливе, а також назву компанії, що здійснює таку перевозку. Записи мають бути впорядковані по алфавіту.
|
|
Описання структури на ім'я Library, що містить наступні властивості:
Створення динамічного масиву об'єктів Library, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Library; вивід на дисплей і у файл прізвища всіх боржників, і окрема всіх тих, чий термін стікає сьогодні. Параметр функції „сьогодні” вводиться з клавіатури. Записи мають бути впорядковані по алфавіту.
|
|
На шахівниці розставлено кілька фігур двох кольорів. Складіть структуру даних для кодування позицій шахових фігур. На основі цієї структури розробіть алгоритм, який перевіряє, які фігури знаходяться під ударом, і хто їм загрожує. Запрограмуйте цей алгоритм. Забезпечте введення даних про розташування фігур з файлу. |
|
На схемі залізничного сполучення розташовано кілька міст. До кожного з них підходить одна або кілька залізничних гілок. Поза міст гілки не перетинаються. Складіть структуру даних для кодування такої схеми. Забезпечте введення цих даних з файлу. На основі цієї структури розробіть і запрограмуйте алгоритм, який перевіряє, чи можна доїхати з міста А до міста Б залізницею. Назви перевіряються міст А і Б користувач вводить з клавіатури. |
|
На схемі автотранспортного сполучення розташовано кілька міст. До кожного з них підходить одна або кілька доріг, так, що з будь-якого міста можна потрапити в будь-який інший або прямо, або через інші міста. Поза міст дороги не перетинаються. Складіть структуру даних для кодування такої схеми. Забезпечте введення цих даних з файлу. На основі цієї структури розробіть і запрограмуйте алгоритм, який визначає всі можливі маршрути з міста А до міста Б. Назви перевіряються міст А і Б користувач вводить з клавіатури. |
|
На шашковій дошці розставлено кілька шашок двох кольорів. Складіть структуру даних для кодування їх позицій. На основі цієї структури розробіть алгоритм, який перевіряє, які фігури знаходяться під ударом, хто їм загрожує, і скільки шашок може бути побито за один удар. Забезпечте введення даних про розташування шашок з файлу. |
|
Програма повинна вводити текст з файлу (невідомого заздалегідь розміру) в масив символів. Розробіть структуру даних і запрограмуйте функцію сортування такого масиву за зростанням кодів символів. Запрограмуйте виклик цієї функції для файлу, ім'я якого користувач вводить з клавіатури. Результат сортування виводиться в текстовий файл з тим же ім'ям, продовженим словом _СОРТ. Наприклад, для файлу «Береза.txt» буде створений файл «Береза_СОРТ.txt». |
|
Поліклініка
Створення динамічного масиву об'єктів Pacient, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Pacient; вивід на дисплей і у файл інформації о пацієнтах, що мають зайву вагу а також о пацієнтах, що страждають на гіпертонію чи гіпотонію. Записи мають бути впорядковані по діагнозу;
|
|
Блокнот Описання класу на ім'я Organizer, що містить наступні властивості та методи:
Створення динамічного масиву об'єктів Organizer, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Organizer; вивід на дисплей і у файл інформації об іменинниках, чий день народження через тиждень, сьогоднішнє число вводиться з клавіатури. Записи мають бути впорядковані по алфавіту;
|
|
Облік успішності студентів. Структура має містити наступні поля:
вивід на дисплей і у файл прізвищ і номерів груп для всіх студентів, включених у масив, що мають заборгованість (хоча б одну двійку) вивести списки боржників по кожному предмету якщо таких студентів ні, вивести відповідне повідомлення.
|
|
Бюро добрих послуг Описання класу на ім'я Zamovlenya, що містить наступні властивості:
Створення динамічного масиву об'єктів Zamovlenya, розмірність якого дорівнює кількості рядків у файлі; читання з файлу in.txt даних у масив об’єктів Zamovlenya; вивід на дисплей і у файл всіх прострочених замовлень. Параметр функції „сьогодні” вводиться з клавіатури. Записи мають бути впорядковані по алфавіту.
|
|
База пошуку товарів. Структура має містити наступні поля:
назва товару вводиться з клавіатури вивести на дисплей і у файл список магазинів, де є такий товар. Список має бути впорядкований по зростанню ціни товару в грн.
|
|
Гра «Морський бій» скласти структуру, яка містить інформацію про кількість палуб корабля, про його координати, а також інформацію про ступінь пошкодження корабля (живий, поранений, убитий). Кораблі мають бути розставлені на поле 10 на 10 клітинок не торкаючись один до іншого |
|
Гра «Хрестики-нулики» скласти структуру, яка містить інформацію про сам знак (нулик або хрестик), та його координати. Строрити функцію, яка аналізує розміщення елементів на полі за правилами гри "хрестики - нулики" та повертає відповідне значення в разі виграша або програша. |
Примітка до всіх варіантів: В таблиці 2 вказані обов'язкові методи і властивості класів. Розробник може додавати на свій розсуд будь-які інші методи і властивості, які визнає потрібними.