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

Методичні вказівки

  1. При складанні програми використовуються динамічні масиви.

  2. Всі відсутні параметри й режими роботи програми задаються користувачем.

  3. Після виконання кожного пункту завдання організувати виведення масиву.

Зміст звіту

Звіт з виконаної роботи включає наступні розділи:титульний лист, постановка задачі, варіант завдання, текст програми, скріншот з результатами роботи програми, висновки.

Лабораторна робота7. "Структури: складені типи даних"(2 год.)

Ціль роботи: Освоєння прийомів роботи із структурами й складання програм, що дозволяють уводити дані в структуру й виводити їх на екран, змінювати й обробляти дані, записані в структуру.

Теоретичні відомості

Структури – це складені типи даних, які побудовані з використанням інших типів. Наприклад,

struct person {

char name[100];

int age; };

де struct – службове слово; person – ім'я (ідентифікатор, тег) структури; name і age – два елементи, що становлять структуру (масив змінних char і ціле число). Оголошення структури повинне закінчуватися крапкою з комою.

Змінні структури оголошуються так само, як змінні інших типів, наприклад,

person fath, ladies[5], *Pfath;

тут ladies[5] – масив структур, *Pfath – покажчик на структуру типу person.

Доступ до елементів структури здійснюється операцією . (крапка) для імені структури й -> (стрілка) – для покажчика на структуру, наприклад:

fath.age=12;

ladies[3].age=27;

cout<<fath.name;

cout<< ladies[3].age;

cout<<Pfath->name;

Вираз Pfath->name еквівалентний виразу (*Pfath).name, що розіменовує покажчик і робить доступним елемент через операцію «крапка».

Після визначення структури можна оголосити масив структур. Наприклад, щоб оголосити масив з 30 елементів типу name_struct, досить записати:

name_struct elem[30];

Для одержання доступу до конкретного елемента масиву структур потрібно проіндексувати ім'я структури.

Постановка задачі

Скласти програму, що створює масив структур і дозволяє вводити дані в масив, виводити дані на екран і виконувати інші дії. Управління структурами повинне здійснюватися за допомогою меню. У меню присутні опції:

– введення дани,

– виведення даних,

– вихід із програми,

а також додаткові опції, зазначені у варіанті завдання (див. наступний розділ).

Варіанти

Структура (поля)

Додаткові опції меню (наступні операції)

1

"Абітурієнт" (прізвище, ім'я, рік народження, оцінки вступних іспитів (5 ісп.))

- Пошук за прізвищем ( –> введення прізвища –> виведення даних по абітурієнту, а також середнього бала й результату «прийнято/не прийнято»)

2

"Абітурієнт" (прізвище, ім'я, рік народження, оцінки вступних іспитів (3 ісп.))

- Пошук за роком народження (–> введення року –> виведення знайдених записів)

3

"Абітурієнт" (прізвище, ім'я, рік народження, оцінки вступних іспитів (3 ісп.))

- Зміна даних (–> введення прізвища –> введення нових даних)

4

"Абітурієнт" (прізвище, ім'я, рік народження, оцінки вступних іспитів (3 ісп.))

- Фільтрація за роком народження (–> введення року –> виведення знайдених записів)

5

"Студент" (прізвище, ім'я, номер групи, середній бал сесії)

  • Упорядкувати за номером групи

(–>виведення даних)

6

"Студент" (прізвище, ім'я, номер групи, оцінки іспитів)

  • Упорядкувати за середнім балом

(–>виведення даних)

7

"Студент" (прізвище, ім'я, номер групи, середній бал сесії)

  • Студенти із середнім балом > 4.2

(–>виведення прізвищ і номерів груп)

8

"Студент" (прізвище, ім'я, номер групи, оцінки іспитів)

- Студенти з оцінками 4 і 5 (–>виведення прізвищ і номерів груп, а також кількості таких студентів)

9

"Студент" (прізвище, ім'я, номер групи, оцінки іспитів)

- Студенти з оцінками 2 (–> виведення прізвищ)

- Кількість «двієчників» у кожній групі

10

"Співробітник" (прізвище, ініціали, посада, стаж роботи, оклад)

- Додати співробітника

11

"Співробітник" (прізвище, ініціали, посада, стаж роботи, оклад)

- Співробітники зі стажем більше…(–>введення числа із клавіатури –> виведення прізвищ співробітників)

12

"Співробітник" (прізвище, ініціали, посада, стаж роботи, оклад)

- Виведення даних (поля структури, а також виплачена сума: оклад за винятком податку 20%)

- Змінити дані (-> запит на введення прізвища -> введення нових даних)

13

"Співробітник" (прізвище, ініціали, посада, стаж роботи, оклад)

- Співробітники з окладом в інтервалі… (–>введення границь діапазону –> виведення прізвищ співробітників)

14

"Поїзд" (пункт призначення, номер поїзда, час відправлення)

- Поїзда після…(–>введення часу –> виведення поїздів, що відправляються пізніше уведеного часу)

15

"Поїзд" (пункт призначення, номер поїзда, час відправлення)

- Пункт призначення …(–> введення назви пункту –> виведення інформації про поїзди в даний пункт)

16

"Поїзд" (пункт призначення, номер поїзда, час відправлення)

- Номер поїзда …(–> введення номера поїзда –> виведення інформації про поїзд)

17

"Поїзд" (пункт призначення, номер поїзда, час відправлення)

- Зміна в розкладі (–> введення номера поїзда –> введення нового часу відправлення)

18

"Поїзд" (пункт призначення, номер поїзда, час відправлення)

- Зміна в розкладі (–> введення номера поїзда –> введення нового пункту призначення)

19

"Блокнот" (прізвище, ім'я, телефон, день народження)

- Пошук телефону (–> введення прізвища –> виведення номера телефону)

20

"Блокнот" (прізвище, ім'я, телефон, день народження)

- У кого сьогодні день народження? (–> введення поточної дати –> виведення прізвищ персон із зазначеною датою народження)

21

"Блокнот" (прізвище, ім'я, телефон, день народження)

- Змінити номер телефону (–> введення прізвища –> введення нового номера)

22

"Накладна" (назва товару, ціна, кількість, вартість)

- Введення даних (товар, ціна, кількість)

- Виведення даних (товар, ціна, кількість, вартість)

- Загальна сума

23

"Накладна" (назва товару, ціна, кількість, вартість)

- Введення даних (товар, ціна, кількість)

- Виведення даних (товар, ціна, кількість, вартість)

- Додати товар

24

"Накладна" (назва товару, ціна, кількість, вартість)

- Введення даних (товар, ціна, кількість)

- Виведення даних (товар, ціна, кількість, вартість)

- Внести зміни ((-> введення назви товару -> введення нових дані)

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