- •1. Кроки для створення виконання програми
- •2. Змінні та константи
- •3. Символьні масиви і рядки
- •4. Директиви препроцесора
- •Тема 2: введення-виведення даних план
- •Аргументи для setiosflags і resetiosflags
- •2. Функція printf
- •2. Операції відношення
- •3. Логічні операції
- •4. Додаткові операції
- •5. Порозрядні операції
- •Тема 4: організація циклів план
- •1. Організація циклів за допомогою while і do...While
- •2. Організація циклів із використанням оператора for
- •3. Оператори switch і goto
- •Тема 5: створення функцій план
- •1. Створення функцій
- •2. Видимість змінних
- •3. Передача значень
- •4. Повертаємі значення і прототипи функцій
- •Тема 6: зовнішні пристрої і символьне введення/виведення план
- •1. Загальна концепція
- •2. Функції символьного введення-виведення
- •3. Символьні функції
- •4. Рядкові функції
- •5. Числові функції
- •6. Функції роботи з датою та часом
- •Тема 7: масиви план
- •1. Одномірні масиви, їхня ініціалізація
- •2. Сортування масивів
- •3. Розміщення одномірного масиву в пам’яті
- •4. Багатомірні масиви і їхнє розміщення в пам’яті
- •Тема 8. Вказівки і посилання план
- •1. Вказівки
- •2. Масиви і вказівки
- •Тема 9: робота з файлами план
- •1. Загальна характеристика роботи з файлами
- •2. Послідовні файли
- •Можливі режими доступу
- •3. Файли довільного доступу (із випадковим доступом)
- •Тема 10. Структури план
- •1. Загальна характеристика структури
- •2. Масиви структур
- •3. Використання масивів, як елементів структур
- •2. Робота зі структурами є універсальною, передбачено додавання записів до файлу (флаг ios:app). Для підрахунку кількості структур на диску приведемо наступні рядки програми:
- •Список літератури
3. Оператори switch і goto
Оператор switch замінює короткий оператор, що розгалужується if… else
Синтаксис:
switch ( вираз )
{
case <конст_вираз 1>:
блок операторів С++;
case <конст_вираз 2>:
блок операторів С++;
...
case < конст_вираз n>:
блок операторів С++;
[default:
блок операторів С++;]
}
Після обчислення виразу в заголовку оператора, його результат послідовно порівнюється з константами-вираженнями <конст_вираз 1> ... <конст_вираз n> починаючи із самого верхнього, поки не буде встановлена їхня відповідність. Тоді виконуються оператори усередині відповідного case, і після цього управління переходить на такий константний вираз без перевірок. Саме тому наприкінці кожної послідовності операторів повинен бути присутнім оператор break, що забезпечує вихід з оператора switch. Гілка, яка має назву default (по умовчанню) може бути відсутня. Якщо вона є, то послідовність операторів, що знаходиться за словом default, виконується тільки тоді, коли порівняння з жодної зі стоячих вище константних виразів не є істинним.
Приклад:
switch (t)
{
case 1:
cout << “\nСообщение 1”; break;
case 2:
cout << “\nСообщение 2”; break;
...
default:
cout << “\n Зрадливий код”;
}
Якщо break не ставиться наприкінці блока операторів, і ми потрапляємо за умовою в блок, то здійснюється «провал донизу».
Приклад:
switch (num)
{
case 1:
cout << "1";
case 2:
cout << "22";
case 3:
cout << "333";
}
Якщо num = 1, то результат буде:
122333
Без використання break можуть бути оригінальні рішення.
Приклад:
switch (num)
{
case 1:
case 2:
case 3:
cout << “Номер від 1 до 3”;
break;
case 4:
cout << “Номер 4”;
break;
default:
cout << “Помилковий номер”;
}
У загальному випадку <виразом> може бути будь-яке вираз, константа або змінна типу int, char або long int. Константи-вираження - це константи типу int, char або long int.
Оператор switch зручно використовувати при реалізації меню.
Оператор goto – рідко зустрічається, краще цим оператором не користуватися.
Приклад використання:
goto tt; // Перехід на мітку tt.
c= 12;
...
tt: ...
Тема 5: створення функцій план
Створення функцій.
Видимість змінних.
Передача значень.
Повертаємі значення і прототипи функцій.
1. Створення функцій
Не варто робити один великий модуль програми. У залежності від можливості окремі “шматки” програми необхідно виділити у вигляді окремих функцій.
Функція, написана на C++, звичайно має такі властивості:
Кожна функція повинна мати ім’я, яке починається з букви або знака підкреслення “_”. Ім’я функції може складатися з цифр, букв і знаків підкреслення.
За ім’ям кожної функції повинна стояти пара круглих дужок. Це дозволяє відокремлювати функції від змінних.
Тіло кожної функції, що починається відразу ж після круглих дужок, повинно бути замкнуте у фігурні дужки. Це означає, що тіло кожної функції складає блок з одного або декількох операторів.
Виклик функції схожий на з’їзд з автомагістралі. Головна дорога – функція main(). Підключення функції рівнозначно з’їзду на об’їзну дорогу. Після повернення з функції (оператор return) управління передається основній функції main(), тобто здійснюється повернення на основну автомагістраль.
Приклад:
У програмі користувач одержує звіт одного з відділів: бухгалтерського, інженерного або відділу управління.
#include <iostream.h>
void bux_otd(void)
{
//код створення звіту бухгалтерського відділу
…
return;
}
void ing_otd(void)
{
// код створення звіту інженерного відділу
…
return;
}
void up_otd(void)
{
// код створення звіту відділу управління
…
return;
}
void main()
{
int choice;
do
{
cout << “Вибір коду відділу \n”;
cout << “\t1. Бух. відділ \n”;
cout << “\t2. Інж. відділ \n”;
cout << “\t3. Відділ управління \n”;
cin >> choice;
}
while ((choice < 1) || (choice > 3));
switch (choice);
{
case 1:
bux_otd(); break;
case 2:
ing_otd(); break;
case 3:
up_otd(); break;
}
}