Методичні вказівки до виконання практичних та лабораторних робіт з курсу «Обчислювальна техніка та програмування», страница 15

24. Створити список, в якому зберігається інформація про абонентів АТС: ПІБ., місце проживання, номер телефону. Необхідно написати програму, яка за прізвищем видає номер абонента.

25. Сформувати документ, в якому зберігається інформація про захворювання співробітників: ПІБ., рік народження, захворювання, тривалість хвороби. На його основі сформувати список співробітників, що перенесли одне і теж захворювання.

26. Створити список, в якому зберігається інформація про абонентів бібліотеки: ПІБ., кафедра, кількість книг узятих абонентом. Необхідно написати програму, визначення кафедри за якою числиться максимальна кількість книг.

27. Сформувати список, в якому зберігаються результати сесії групи. Написати програму нарахування стипендії за результатами сесії.

28. У звіті зберігається інформація про винахідницьку діяльність кафедр за три роки: найменування кафедр, кількість заявок, кількість позитивних рішень. Написати програму визначення кафедри, що отримала максимальну кількість позитивних рішень.

29. Написати програму визначення місяця в якому народилася максимальна кількість студентів в вашій групі.

3.4 Контрольні питання

1. Назвіть основні відокремлювальні характеристики типу даних «структура».

2. Які типи полів може містити структура.

3. Назвіть засоби звернення до елементів структури.

4. Назвіть засоби опису змінних структурного типу.

5. Чи можна  присвоювати змінної структурного типу структуру?

     4 РІШЕННЯ ЗАДАЧ ІЗ ВИКОРИСТАННЯМ ФУНКЦІЙ

   4.1 Мета роботи

     Вивчити і освоїти засоби укладання функцій і звернення до них при рішенні задач на мові С++.

    4.2 Підготовка до роботи

   Вивчити правила складання функцій. Необхідно знати основні засоби організації взаємодії основної програми (функції main) і функції, що визначається користувачем [1, с. 97-112; 2, ç. 67-77; конспект лекцій].

Функція в C++ це логічна самостійна частина, що має окреме ім’я програми, складається з нуля (в противному випадку) або більш операторів, об'єднаних в виконуємий модуль для рішення певної задачі. Стандарт мови визначає наступний формат визначення функції:

[тип] им’я_функції (список формальних параметрів.|void)

{

[опис даних]

[оператори тіла функції]

[return] [вираз]

},

Де специфікація тип - задає тип значення функції, що вертається. Якщо вказівка типу буде відсутня, то вважається, що функція вертає значення int. Якщо замість типу коштує ключове слово void, то вважається, що функція не вертає у викликаючу програму жодного значення. Особливий випадок, коли використовується тип void* - родовий покажчик. В цьому випадку результат роботи функції є покажчик.

         Ім’я_функції - ідентифікатор довільного вигляду, що є покажчиком на функцію, значення якого рівно адресі крапки входу в функцію.

         Список формальних параметрів - це послідовність оголошень формальних параметрів, поділених комами. В C++ допускається  використання функцій без формальних параметрів. Такий випадок виникає, коли у функцію не передаються жодні аргументи. Тоді, поле формальних параметрів може бути порожнім, або містити ключове слово void. Допускається визначення формальних параметрів за замовчанням (див. нижче.).

При викликові функції з формальними параметрами компілятор вставляє в код програми послідовність машинних команд, що забезпечують запис, перерахованих в списку аргументів в стек.

Опис даних і оператори тіла функції являють собою послідовність операторів, що забезпечують рішення функціональної задачі.

Оператор return – необ’язковий оператор, що забезпечує вихід з функції.

Якщо оператор return використовується спільно з вираженням, то вихід із функції супроводжується передачею обчисленого значення в крапку виклика. Тип результату повинен співпадати або бути сумісним з типом функції. За відсутності оператора return вихід із функції відбувається після виконання останнього оператора в тілі функції.