2. План:
1.Структура програми
2.Засоби мови для написання лінійної
програми
3.Форматований вивід на екран.
4.Форматоване введення з клавіатури.
5.Потокове уведення-виведення в Сі++
3. Загальна структура програми
на Сі++ наступна
директиви_препроцесора
визначення_функції_1
визначення_функції_2
визначення_функції_N
4. Серед функцій обов'язково
є присутньою головна функція з ім'ям
main
Проста програма містить тільки головну
функцію і має наступну структуру:
директиви препроцесора
void main()
{ визначення_об'єктів;
виконувані_оператори;
}
5. Приклад 1. Дано: а, b, с — сторони
трикутника. Обчислити S — площа трикутника.
По формулі Герона :
де р — півпериметр трикутника.
7. Програма складається з однієї головної
функції із стандартним ім'ям main. Слово
void означає відсутність якого-небудь
повертаного цією функцією результату, а
порожні дужки — відсутність у неї аргументів.
Усе, що розміщено після заголовка функції і
поміщено у фігурні дужки, можна назвати
тілом функції.
Перший рядок — оголошення
використовуваних змінних. Усі вони
плаваючого типу double. Оголошення змінних
закінчується крапкою з комою.
8. Подальша частина програми — виконувані
оператори. Серед них оператори виводу на
екран, введення даних з клавіатури, оператори
привласнення.
Поняття «оператор» в Сі++ трактують таким
чином: будь-який вираз, після якого стоїть
крапка з комою, сприймається компілятором
як окремий оператор. Оператор визначає
закінчену дію на черговому кроці виконання
програми.
.
9. Якщо обчислення вираження закінчується
привласненням, то його можна назвати
оператором привласнення.
У даній програмі є присутніми два оператори
привласнення : обчислення півпериметра (р) і
обчислення площі трикутника (s).
10. У вираженні для обчислення площі
використовується бібліотечна функція sqrt()
— квадратний корінь.
Ця функція відноситься до бібліотеки
математичних функцій. Для підключення цієї
бібліотеки до нашої програми
використовується директива препроцесора
#include <math.h>.
Тут math.h — ім'я заголовного файлу цієї
бібліотеки.
12. У даній програмі оператори
printf (...); і scanf (...);
реалізують відповідно вивід на екран і
введення початкових даних з клавіатури.
Вони здійснюють звернення до відповідних
функцій стандартної бібліотеки введення-
виведення Сі, заголовний файл якої має ім'я
stdio.h.
Символи
"%c" є специфікацією формату
введення/виведення символьних даних,
"%d" — специфікацією для цілих чисел
13. Форматований вивід на екранФорматований вивід на екран
Оператор виклику функції printf() має
наступну структуру:
printf(форматний рядок,
список_аргументів);
Форматний рядок обмежений подвійними
лапками (тобто є текстовою константою) і може
включати довільний текст, символи, що
управляють, і специфікатори формату. Список
аргументів може бути відсутнім або ж
складатися з виразів, значення яких виводяться
на екран (у окремому випадку з констант і
змінних).
14. У прикладі оператор printf ("nа="); містить
текст ("а=") і символи ("n"), що управляють.
Текст виводиться на екран в тому вигляді, в
якому він записаний. Символи, що управляють,
впливають на розташування на екрані знаків,
що виводяться. В результаті виконання цього
оператора на екран з нового рядка виведуться
символи а=.
Ознакою символу, що управляє, є значок .
15. n - перевід строки;
t – горизонтальна табуляція;
r – повернення курсору к початку нової строки;
a – сигнал-дзвінок;
b –повернення на один символ (позицію);
f – прогін сторінки;
v – вертикальна табуляція
16. Оператор
printf ("Площа трикутника=% f", s);
містить усі види параметрів функції printf.
Список аргументів складається з однієї змінної
s. Її значення виводиться на екран. Пара
символів %f є специфікацією формату
значення змінної s, що виводиться. Значок % —
ознака формату, а буква f вказує на те, що
число, що виводиться, має речовинний (real)
(плаваючий) тип і виводиться на екран у формі
з фіксованою точкою.
17. Наприклад, якщо в результаті обчислень
змінна s отримає значення 32,435621, то на
екран виведеться:
Площа трикутника=32.435621
Специфікатор формату визначає форму
зовнішнього представлення величини, що
виводиться. Ось деякі специфікатори формату:
%c – символ;
%s – строчка;
%d – ціле десяткове число (int);
%u – ціле десяткове без знаку;
%f – дійсне з плаваючою крапкою;
18. Наприклад, після виконання наступних
операторів:
на екран виведеться рядок:
m=84.299999 k=-12 p=3.21500e+01
Тут двічі використовуваний символ табуляції , що
управляє, відокремив один від одного значення, що
виводилися. З цього прикладу видно, що відповідність
між специфікаторами формату і елементами списку
аргументів встановлюється в порядку їх запису зліва
направо.
19. Форматоване введення зФорматоване введення з
клавіатуриклавіатури
Оператор виклику функції scanf() має наступну
структуру:
scanf(форматний_рядок, список_аргументів);
Ця функція здійснює читання символів, що
вводяться з клавіатури, і перетворення їх у внутрішнє
представлення відповідно до типу величин. У функції
scanf() форматний рядок і список аргументів є
обов'язковим. У прикладі є оператор:
scanf("%f",&a);
Тут "%f" — форматний рядок; &а — список
аргументів, що складається з одного елементу. Цей
оператор проводить введення числового значення в
змінну а.
20. Символьну послідовність, що вводиться
з клавіатури і сприйману функцією
scanf(), прийнято називати вхідним
потоком. Функція scanf() розділяє цей
потік на окремі величини, що вводяться,
інтерпретує їх відповідно до вказаного
типу і формату і привласнює змінним, що
містяться в списку аргументів.
21. Список аргументів — це перелік змінних, що
вводяться, причому перед ім'ям кожної змінної
ставиться значок &. Це знак операції «взяття
адреси змінною».
Форматний рядок пишеться в лапках (як і для
printf) і складається зі списку специфікацій.
Кожна специфікація розпочинається зі знаку %,
після якого можуть слідувати
*ширина поля модифікатор специфікатор
22. З них обов'язковим елементом є лише
специфікатор. Для введення числових даних
використовуються наступні специфікатори:
d — для цілих десяткових чисел (тип int);
u — для цілих десяткових чисел без знаку (тип
unsigned int);
f — для дійсних чисел (тип float) у формі з
точкою;
е — для дійсних чисел (тип float) у формі з
плаваючою точкою.
23. Зірочка в специфікації дозволяє пропустити у
вхідному потоці певну кількість символів.
Ширина поля — ціле позитивне число, що
дозволяє визначити число символів з вхідного
потоку, що належать значенню відповідної
змінної, що вводиться. Як і в специфікаціях
виводу для функції printf(), в специфікаціях
введення функції scanf() допустиме
використання модифікаторів h, l, L
24. Вони застосовуються при введенні значень
модифікованих типів :
hd — для введення значень типу short int;
ld — для введення значень типу long int;
lf, le — для введення значень типу double у
формі з фіксованою і плаваючою точкою;
Lf, Le — для введення значень типу long
double у формі з точкою.
25. У прикладі програми усі три величини а, b, c
можна ввести одним оператором:
scanf("%f%f%f",&a,&b,&c);
Якщо послідовність введення буде такою:
5 3.2 2.4 <Enter>
то змінні отримають наступні значення: а = 5,0, b =
3,2, с = 2,4. Роздільником в потоці введення між
різними значеннями може бути будь-яка кількість
пропусків, а також інші пробільні символи: знак
табуляції, кінець рядка. Тільки після натиснення на
клавішу Enter значення, що вводяться,
привласняться відповідним змінним. До цього
вхідний потік поміщається у буфер клавіатури і
може редагуватися.
26. Потокове введення-виведення в Сі++Потокове введення-виведення в Сі++
Програмуючи на мові Сі++, можна
користуватися засобами введення-виведення
стандартної бібліотеки Сі, що підключається за
допомогою заголовного файлу stdio.h. Проте в
Сі++ є свої специфічні засоби введення-виводу
Це бібліотека класів, що підключається до
програми за допомогою файлу iostream.h. У цій
бібліотеці визначені в якості об'єктів стандартні
символьні потоки з наступними іменами:
сin — стандартний потік введення з клавіатури;
cout — стандартний потік виводу на екран.
27. Введення даних інтерпретується як витягання з
потоку сin і привласнення значень відповідним
змінним. У Сі++ визначена операція витягання із
стандартного потоку, знак якої >>. Наприклад,
введення значень в змінну х реалізується
оператором
cin>>x;
Виведення даних інтерпретується як приміщення
в стандартний потік cout значень, що виводяться.
Виводитися можуть тексти, поміщені в подвійні
лапки, і значення виразів. Знак операції
приміщення в потік <<. Приклади використання
потокового виводу :
cout<<a+b;
соut<<"nРезультат="<<Y;
cout<<"x="<<x<<" y="<<y<<" z="<<z<<endl;
28. Перепишемо програму з прикладу у варіанті з
використанням потокового введення-виведення
Сі++.