- •1. Основні поняття
- •2. Етапи створення програми
- •3.Алфавіт і ключові слова
- •Самостійна робота. Директиви препроцесора
- •1. Директива #include
- •2 Директива #define
- •3 Директива #undef
- •4 Директиви #if, #elif, #else, #endif
- •5 Директиви #ifdef і #ifndef
- •6 Директива #line
- •Самостійна робота Функції файлу math.H
- •1. Базові типи даних
- •1. Char - символ
- •3. Float - число з плаваючою комою одинарної точності
- •4. Double - число з плаваючою комою подвійної точності
- •2. Структура програми
- •Лекція 3. Вирази. Арифметичні операції. Математичні функції
- •2. Пріоритети операцій.
- •3. Вирази.
- •4.Арифметичні операції.
- •5.Операції присвоєння.
- •6. Операції порівняння (операції відношень).
- •7. Логічні операції.
- •8. Умовна операція.
- •Вираз1 ? вираз2: вираз3
- •Самостійна робота. Правила узгодження типів
- •Самостійна робота. Команда присвоєння суміщена з арифметичною операцією
- •Лекція 4. Потоки та функції введення-виведення даних.
- •1. Потоки введення-виведення даних
- •1.1 Команда введення даних.
- •1.2 Команда виведення даних.
- •2.Функції введення-виведення даних
- •Самостійна робота. Перенаправлення потоків введення-виведення у ms dos
- •Теоретичні відомості
- •Базові типи даних
- •Потоки введення – виведення даних
- •Математичні функції
- •Порядок виконання роботи:
- •Лекція 5. Алгоритмічний вибір альтернатив
- •2. Команда розгалуження if.
- •If (логічний вираз) команда1; else команда2;
- •If (логічний вираз) команда1;
- •5. Команда безумовного переходу goto.
- •Мітка : команда;
- •Самостійна робота. Побітові операції та операції зсуву
- •Теоретичні відомості
- •Вираз1, вираз2 або команда1, команда2
- •If (логічний вираз) команда1; else команда2;
- •If (логічний вираз) команда1;
- •Теоретичні відомості
- •Лекція 6. Алгоритмічна конструкція повторень
- •1.Команда циклу з лічильником for.
- •2. Команда циклу з передумовою (while)
- •3.Команда циклу з післяумовою do-while
- •Самостійна робота Оператори переривання роботи циклу
- •Лабораторна робота №4. Циклічні оператори (while, do…while).
- •Теоретичні відомості
- •Цикл з передумовою while
- •While ( вираз )оператор;
- •Завдання 2.
- •Лабораторна робота №5. Циклічні оператори (for).
- •Теоретичні відомості
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура самостійної роботи
- •Структура самостійної роботи
- •Контрольні запитання і завдання
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура самостійної роботи
- •Питання і задачі для самостійної роботи
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Забезпечення заняття:
- •Зміст і хід заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Забезпечення заняття:
- •Зміст і хід заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Забезпечення заняття:
- •Зміст і хід заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Структура заняття:
- •1) Знайти кількість і добуток усіх парних цілих чисел з проміжку від 4 до 11______
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Забезпечення заняття:
- •Зміст і хід заняття:
- •Державний вищий навчальний заклад «Чернівецький політехнічний коледж» «Основи програмування та алгоритмічні мови»
- •Забезпечення заняття:
- •Зміст і хід заняття:
Самостійна робота. Команда присвоєння суміщена з арифметичною операцією
Щоб надати значення змінній, можна скористатися командою, суміщеною з деякою арифметичною операцією, а саме:
+= - присвоєння після додавання
-= - присвоєння після віднімання
*= - присвоєння після множення
/= - присвоєння після ділення
Зауважимо, що між символом арифметичної операції та символом «=» пропуск не допускається, оскільки даний запис з лексемою.
Наприклад,
a += b; еквівалентно a = a + b;
a *= c; еквівалентно a = a * c;
p /= 2.2-d; еквівалентно p = p / (2.2 - d);
x -= 4.3 – z; еквівалентно x = x – (4.3 - z);
Лекція 4. Потоки та функції введення-виведення даних.
1. Потоки введення-виведення даних
У С++ немає вбудованих команд уведення-виведення даних. Для організації введення-виведення тут реалізована концепція потоків, яка визначена у спеціальних модулях. У модулі istream.h описані команди введення, у модулі ostream.h – команди виведення, а у модулі iostream.h – команди виведення і введення.
Під потоком розуміють процес введення-виведення інформації у файл. Периферійні пристрої введення-виведення, такі як клавіатура, монітор, принтер, розглядаються як текстові файли. Під час виконання будь-якої програми автоматично підключаються стандартні потоки для введення даних з клавіатури (cin), виведення на екран (cout), виведення повідомлення про помилки (cerr) і допоміжний потік (clog).
Стандартні потоки використовують команди введення (>>) та виведення (<<) даних. За замовчування стандартним пристроєм для потоків виведення даних і повідомлень про помилки є монітор користувача, а для потоку введення даних – клавіатура. Однак потоки можна перенаправляти.
1.1 Команда введення даних.
Надавати значенням змінним можна двома способами: за допомогою команди присвоєння або команда введення даних із клавіатури. Команда введення даних з клавіатури дає змогу виконувати програму для різних вхідних даних, що робить її більш універсальною. Команда введення >> описана у бібліотеці iostream.h і має такий вигляд:
cin>>змінна;
Дія команди. Виконання програми зупиняється. Система переходить у режим очікування введення даного (екран темний, миготить курсор). Користувач набирає на клавіатурі значення змінної і натискає на клавішу вводу. У результаті виконання цієї команди змінній буде присвоєне конкретне значення.
Якщо необхідно ввести значення відразу для декількох змінних, то можна або використовувати або декілька потоків введення, або записати усі змінні в одному потоці cin, застовувавши для цього декілька команд >>, а саме:
cin>>змінна1>>змінна2>>...>>зміннаN;
Якщо у списку введення (який набрали на клавіатурі) даних більше, ніж змінних, то зайві дані будуть зчитані наступною командою введення. Якщо у програмі така команда відсутня, вони будуть проігноровані.
Програми необхідно складати так, щоб ними могли користуватися не лише укладачі, а й інші. Тобто програми мають бути масовими і зрозумілими. Пере командою введення даних варто записувати команду виведення на екран текстового повідомлення-підказки про те, що саме слід ввести.
1.2 Команда виведення даних.
Для виведення на екран повідомлень і результатів обчислень використовують стандартний потік виведення cout і команду <<, які визначеніу бібліотеці iostream.h:
cout<<вираз1<<вираз2<<...<<вираз N;
У списку виведення можуть бути сталі, змінні або вирази.
Дія команди. Сталі, знчення змінних та виразів виводяться на екран у вікно виведення. Це вікно можна переглянути за допомогою команд Window –> User screen головного вікна компілятора або комбінації клавіш Alt+F5.
Текстові повідомлення у команді виведення записують у лапках.
Керуючі послідовності. Керуючі послідовності – це комбінації спеціальних символів, які використовуються для введення та виведення . керуюча послідовність складається із символу слеш „\” і спеціально означеного символу. Вони призначені для фор матованого виведення результатів обчислень на екран. Основні керуючі послідовності:
Символ керуючих послідовностей |
Коментар |
\a, \7 |
Подати звуковий сигнал |
\b |
Повернути курсор на один символ назад(знищити попередній символ |
\f |
Перейти на нову сторінку |
\n |
Перейти на новий рядок |
\r |
Повернути курсор на початок рядка |
\t |
Перевести курсор до наступної позиції табуляції |
\v |
Вертикальна табуляції |
\\ |
Вивести символ похилої риски |
\’ |
Вивести символ апострофа |
\” |
Вивести символ лапок |
\? |
Вивести знак запитання |
Керуючі послідовності разом з коментарями записують у лапках.
Зауваження. Значення дійсних чисел (float) можна виводити на екран у стандартному або науковому форматах. Якщо значення даного необхідно заокруглити до n значущих цифр, то перед командою виведення треба записати cout.precision(n). Для подання результатів у науковому форматі необхідно під’єднати файл заголовка iomanip.h і перед командою виведення записати cout<<setiosflags(ios::scientofic);
Для форматного виводу у С++ використовуються маніпулятори, для використання яких до програми потрібно підключити заголовний файл <iomanip.h>:
setw(int) – встановлює максимальну ширину поля виводу чисел та рядків (не символів);
setprecision(int) – встановлює максимальну кількість цифр дробової частини для дійсних чисел з фіксованою крапкою;
setiosflags(ios::showpoint | ios::fixed) – вивід дійсних чисел з фіксованою крапкою;
setiosflags(ios::left) або setiosflags(ios::right) – вирівнювання по лівому або правому полю;
endl – при виводі включає у потік символ нового рядка, еквівалентний “\n” (його опис міститься у файлі iostream.h).
Маніпулятори спрямовуються в потік виводу, аналогічно тому, як це зроблено у прикладі:
Приклад.
# include<iostream.h>
#include <iomanip.h>
void main()
{float d=52.28679;
float f= 410.0;
cout<< setprecision(3);
cout<<setiosflags(ios::showpoint | ios::fixed);
cout<<setw(12)<<d<<endl<<setw(12)<<f<<endl;
}
Результат виводу ( позначає пробіл):
52.287
410.000
Зверніть увагу на те, що у даному прикладі маніпулятори точності та фіксації крапки спрямовуються у потік виводу одноразово, тоді як ширину поля виводу необхідно встановлювати для кожного значення