SlideShare a Scribd company logo
1 of 31
Мова СМова Сі++і++
Алфавіт, базові типи і опис даних
План:
1.Імена в Сі++
2.Змінні в Сі++
3.Константи в Сі++
4.Вирази в Сі++
5.Операції порівняння і привласнення
в Сі++
6.Арифметичні операції
7.Логічні операції
Імена в Сі++
Алфавіт
У алфавіт мови Сі++ входять:
• латинські букви: від а до z (рядкові) і від A до Z
(прописні);
• десяткові цифри: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;
• спеціальні символи: "{ }, I [ ] ( ) + - / % ; ' : ? < = > _ !
& # ~ ^ .
Комбінації деяких символів, не розділених
пропусками, інтерпретуються як один значимий
символ. До них відносяться:
++ — == && || «»>=<=+=-=*=/=?: /**///
/* Це коментар, допустимий в Сі і Сі++ */
// Це рядковий коментар,
використовуваний тільки в Сі++
Лексеми — одиниці тексту програми,
які при компіляції сприймаються як
єдине ціле і не можуть бути розділені на
дрібніші елементи.
До лексем відносяться:
ідентифікатори, службові слова,
константи, знаки операцій,
роздільники
Ідентифікатори
Послідовність латинських букв, цифр, символів
підкреслення (_), що розпочинається з букви
або символу підкреслення, є ідентифікатором.
Наприклад:
В12 rus hard_RAM_disk MAX ris_32
В Сі++ розрізняються прописні і рядкові букви.
Наприклад:
flag, FLAG, Flag, FlAg — різні ідентифікатори
Службові (ключові) слова
Службові слова в Сі++ — це ідентифікатори,
призначення яких однозначно визначене в
мові.
Типи даних
У Сі++ є чотири базові арифметичні (числових)
типи даних. З них два цілочисельних — char,
int — і два плаваючих — float і double. В
програмах можна використовувати деякі
модифікації цих типів, що описуються за
допомогою службових слів — модифікаторів.
Існують два модифікатори розміру — short
(короткий) і long (довгий) — і два модифікатори
знаків — signed (знаковий) і unsigned
(беззнаковий). Знакові модифікатори
застосовуються тільки до цілих типів.
Таблиця типів данихТаблиця типів даних
Тип даних
Розмі
р
(байт)
Діапазон значень
Еквівалентна
назва типа
char 1 -128…+127 signed char
int 2/4 залежить від системи
signed, signed
char
unsigned char 1 0…255 немає
unsigned int 2/4 залежить від системи unsigned
short int
2 -32768…32767 short, signed
short int
unsigned
short
2 0…655535
unsigned short
int
long int
4
-2147483648…2147483647
long, signed
long int
unsigned long
int
4 0…4294967295 unsigned long
float 4 +/-(3.4Е-38…3.4Е+38) ні
double 8 +/-(3.4Е-308…1.7Е+308) ні
Аналізуючи таблицю,
можна зробити наступні висновки:
• якщо не вказаний базовий тип, то за
умовчанням мається на увазі int;
• якщо не вказаний модифікатор знаків, то
за умовчанням мається на увазі signed;
• з базовим типом float модифікатори не
вживаються;
• модифікатор short застосований тільки до
базового типу int .
У мові Сі++ величини типу char можуть
розглядатися в програмі і як символи, і як цілі
числа. Усе залежить від способу використання
цієї величини. У разі інтерпретації величини
типу char як символу її числове значення
являється ASCII -кодом. Наступний приклад
ілюструє сказане.
char a = 6 5;
printf("%c", a);/*На екрані з'явиться символ
А*/
printf("%d", a);/*На екрані з'явиться число
65*/
Символи "%c" є специфікацією формату
введення/виведення символьних даних,
а "%d" — специфікацією для цілих чисел
У останні версії Сі++ доданий окремий логічний
тип з ім'ям bool. Його відносять до різновиду цілих
типів даних.
Опис змінних в програмах на Сі++ має вигляд:
ім'я_типу список змінних;
Приклади описів :
char symbol, cc; unsigned char code;
int number, row; unsigned long long_number;
float x, X, cc3; double e, b4;
long double max_num;
ініціалізація змінних – це одночасний
опис з наданням початкових значень
змінних. Опис з ініціалізацією
проводиться за наступною схемою:
тип ім'я_змінної = початкове_значення
Наприклад:
float pi=3.14159, c=l.23;
unsigned int year=2000;
Константи
Запис цілих констант
Цілі десяткові числа, що розпочинаються не з
нуля, наприклад: 4, 356, — 128.
Цілі вісімкові числа, запис яких розпочинається
з нуля, наприклад: 016, 077.
Запис символьних і строкових констант
Символьні константи заключають в апострофи.
Наприклад: 'А', 'а', '5 '+'. Строкові константи, що
є символьними послідовностями, заключають в
подвійні лапки. Наприклад: "rezult", "введіть
початкові дані".
Особливий різновид символьних
констант представляють управляючи
символи.
Їх призначення — управління виводом на
екран.
У програмі на Сі++ вони зображуються
парою символів, перший з яких ''. Ось
деякі з символів, що управляють :
'n' — перехід на новий рядок;
't' — горизонтальна табуляція;
'а' — подача звукового сигналу.
Іменовані константи (константні змінні).
В програмі на Сі++ можуть використовуватися
іменовані константи. Вживане для їх
визначення службове слово const прийнято
називати кваліфікатором доступу.
Кваліфікатор const вказує на те, що ця
величина не може змінюватися впродовж
усього часу роботи програми. Зокрема, вона не
може розташовуватися в лівій частині
оператора привласнення.
Наприклад :
const float pi=3.14159;
const int iMIN=l, iMAX=1000;
Визначення констант на стадії препроцесорної обробки
програми. Ще однією можливістю ввести іменовану
константу являється використання препроцесорної
директиви #define в наступному форматі:
#define <ім'я константи> <значення константи>
Наприклад:
#define iMIN 1
#define iMAX 1000
На стадії препроцесорної обробки вказані імена
замінюються на відповідні значення.
Наприклад, якщо в програмі є присутнім оператор
X=iMAX - iMIN;
то в результаті препроцесорної обробки він набере
вигляду:
Х=1000-1;
Константи перераховуваного типу
Цей засіб мови дозволяє визначати послідовність
цілочисельних іменованих констант. Опис
перераховуваного типу розпочинається із службового
слова enum, а подальший список констант полягає у
фігурні дужки. Наприклад:
enum {A, B, C, D};
В результаті імені А буде зіставлена константа 0,
імені В — константа 1, C — 2, D — 3. За умовчанням
значення першої константи дорівнює нулю.
Для будь-якої константи можна явно вказати значення.
Наприклад:
enum {A=10, B, C, D};
В результаті будуть встановлені наступні відповідності:
А = 10, B = 11, C = 12, D = 13.
Операції і вирази
Ось декілька прикладів
арифметичних виразів, записаних за
правилами мови Сі ++:
a+b 12.5 - z 2*(X+Y)
х++ х+++b --n*2 n*=1
Арифметичні операції
До арифметичних операцій відносяться:
— віднімання або унарний мінус;
+ складання або унарний плюс;
* множення;
/ ділення;
% ділення по модулю (аналог Mod в Паскале);
++ унарна операція збільшення на одиницю
(інкремент);
-- унарна операція зменшення на одиницю
(декремент).
Операція % застосована тільки до цілих чисел
Операції інкремента і декремента можуть
застосовуватися тільки до змінних і не можуть
— до констант і виразів. Операція ++
збільшує значення змінної на одиницю,
операція -- зменшує значення змінної на
одиницю. Обидва знаки операції можуть
записуватися як перед операндом (префіксна
форма), так і після операнда (постфіксна
форма), наприклад: ++х або х++, --а або а--.
Три наступні оператори дають один і той же
результат:
х=х+1; ++х; х++
Відмінність проявляється при використанні
префіксною і постфіксною форм у виразах.
Перший приклад:
а=3; b=2;
с=а++*b++;
В результаті виконання змінні отримають
наступні значення: а=4, b=3, c=6.
Другий приклад:
а=3; b=2;
с=++а*++b;
Результати будуть такими: а = 4, b = 3, с
= 12.
Пояснення наступне: при використанні постфіксної
форми операції ++ і -- виконуються після того, як
значення змінної було використане у вираженні, а
префіксні операції — до використання. Тому в
першому прикладі значення змінної с обчислювалося
як твір 3 на 2, а в другому — як твір 4 на 3.
По убуванню старшинства арифметичні операції
розташовані в наступному порядку:
++, --
— (унарний мінус)
*, /, %
+, -
Однакові за старшинством операції виконуються в
порядку зліва направо.
Операції відношення
У Сі++ слід лише звернути увагу на відмінність в
записі операцій «рівно» і «не рівно».
< менше <= менше або рівно
> більше >= більше або рівно
= = рівно ! = не рівно.
В стандарті Сі немає логічного типу даних. Тому
результатом операції відношення є ціле число: якщо
відношення істинне — 1, якщо помилково —0.
Приклади відношень:
а<0, 101>=105, 'а'=='А', 'а"='А'
Результатом другого і третього стосунків буде 0 —
брехня; результат четвертого відношення дорівнює 1
— істина; результат першого відношення залежить від
значення змінної а.
Логічні операції
Три основні логічні операції в мові Сі++
записуються.
! операція заперечення (НІ)
&& визначаються таблицею
істинностікон'юнкція, логічне множення (І)
| | диз'юнкція, логічне складання (ЧИ).
Правила їх виконання .
Наприклад, логічний вираз, що відповідає
системі нерівностей 0 < х < 1 в програмі на Сі++
запишеться у вигляді наступного логічного
виразу:
х>0 && х<1
По убуванню пріоритету логічні операції і операції
відношення розташовані в наступному порядку:
! > < >= <=
== != && ||
Знаки бітових логічних операцій :
& порозрядна кон'юнкція (И)
| порозрядна диз'юнкція (ЧИ)
^ що порозрядне, що виключає АБО
~ порозрядне заперечення (НЕ).
Бітові логічні операції разом з операціями
порозрядного зрушення вліво (<<) і управо (>>)
дозволяють дістатися до кожного біта внутрішнього
коду. Найчастіше такі дії доводиться виконувати в
системних програмах. У цьому посібнику ми їх
розглядати не будемо.
Операція привласнення
Знак операції привласнення =. Привласнення, як
будь-який інший знак операції, може кілька разів
входити у вираження.
Наприклад:
а=b=с=х+у;
Привласнення має найнижчий пріоритет (нижче
тільки у операції «кома»). Операція привласнення —
правоасоциативна. Це означає, що дещо підряд
розташованих привласнень виконуються справа
наліво. Тому в приведеному вище виразі першої
виконається операція складання, потім змінною з
привласненим значенням суми, потім це значення
привласниться змінній b і у кінці — змінній а.
У мові Сі++ є додаткові операції привласнення,
що поєднують привласнення з виконанням
інших операцій. Серед них: +=, -=, /=, *=, %=.
Пріоритет у них такий же, як і у простого
привласнення. Приклади використання цих
операцій
В процесі обчислення виразів з різнотипними
операндами проводиться автоматичне
перетворення типів величин. Знання правил, по яких
відбуваються ці перетворення, попереджає деякі
помилки в записі виразів. Суть правил перетворення
при виконанні бінарних операцій зводиться до
наступного:
• перетворення не виконується, якщо обидва
операнди мають однаковий тип;
• при різних типах операндів відбувається
приведення величини з молодшим типом до
старшого типу (окрім операції привласнення);
• при виконанні операції привласнення
величина, отримана в правій частині,
перетвориться до типу змінної, що стоїть зліва від
Цілі типи за збільшенням старшинства розташовані
в такому порядку:
char→shot→int→long
Порядок старшинства речових типів наступний:
float→double→long double
Слід мати на увазі, що при перетворенні цілої
величини до плаваючого типу може статися втрата
точності (замість 1 вийде 0,999).
Наступний приклад ілюструє порядок виконання
операцій і перетворення типів, що відбуваються, при
обчисленні вираження (рис. 1, цифри вгорі — порядок
операцій).
char ch; int i; float f;
double d; long double r;
1

More Related Content

What's hot

Рівняння з параметрами
Рівняння з параметрамиРівняння з параметрами
Рівняння з параметрамиFormula.co.ua
 
Osnovni ko hctpykcii movi
Osnovni ko hctpykcii moviOsnovni ko hctpykcii movi
Osnovni ko hctpykcii movimetallurg056
 
урок 17 поліваріантне розгалуження
урок 17 поліваріантне розгалуженняурок 17 поліваріантне розгалуження
урок 17 поліваріантне розгалуженняHelen Pata
 
система числення 2016
система числення 2016система числення 2016
система числення 2016Anya Anya
 
02 Arithmetic Data Types
02 Arithmetic Data Types02 Arithmetic Data Types
02 Arithmetic Data Typesolegapster
 
03 Constants And Variables
03 Constants And Variables03 Constants And Variables
03 Constants And Variablesolegapster
 
властивості
властивості властивості
властивості Irina Gorbenko
 
Введення формул в ЕТ EXCEL
Введення формул в ЕТ EXCELВведення формул в ЕТ EXCEL
Введення формул в ЕТ EXCELtanya-m
 
квадратні нерівності
квадратні нерівностіквадратні нерівності
квадратні нерівностіTetyana Andrikevych
 

What's hot (16)

Функція
ФункціяФункція
Функція
 
функції
функціїфункції
функції
 
Рівняння з параметрами
Рівняння з параметрамиРівняння з параметрами
Рівняння з параметрами
 
Osnovni ko hctpykcii movi
Osnovni ko hctpykcii moviOsnovni ko hctpykcii movi
Osnovni ko hctpykcii movi
 
урок 17 поліваріантне розгалуження
урок 17 поліваріантне розгалуженняурок 17 поліваріантне розгалуження
урок 17 поліваріантне розгалуження
 
3 6 excel
3 6 excel3 6 excel
3 6 excel
 
система числення 2016
система числення 2016система числення 2016
система числення 2016
 
02 Arithmetic Data Types
02 Arithmetic Data Types02 Arithmetic Data Types
02 Arithmetic Data Types
 
03 Constants And Variables
03 Constants And Variables03 Constants And Variables
03 Constants And Variables
 
Parametr
ParametrParametr
Parametr
 
властивості
властивості властивості
властивості
 
990 _
990  _990  _
990 _
 
властивості
властивості властивості
властивості
 
2
22
2
 
Введення формул в ЕТ EXCEL
Введення формул в ЕТ EXCELВведення формул в ЕТ EXCEL
Введення формул в ЕТ EXCEL
 
квадратні нерівності
квадратні нерівностіквадратні нерівності
квадратні нерівності
 

Viewers also liked

Viewers also liked (20)

Dean's List
Dean's ListDean's List
Dean's List
 
25570612 113536 5504
25570612 113536 550425570612 113536 5504
25570612 113536 5504
 
Carnaval.josecarlos
Carnaval.josecarlosCarnaval.josecarlos
Carnaval.josecarlos
 
Actividades de nivelacion primer periodo grado 2 año 2013
Actividades  de nivelacion  primer periodo grado 2  año 2013Actividades  de nivelacion  primer periodo grado 2  año 2013
Actividades de nivelacion primer periodo grado 2 año 2013
 
अल्लाह ने ब्याज को हराम ठहराया है
अल्लाह ने ब्याज को हराम ठहराया हैअल्लाह ने ब्याज को हराम ठहराया है
अल्लाह ने ब्याज को हराम ठहराया है
 
Curso sobre Internet
Curso sobre InternetCurso sobre Internet
Curso sobre Internet
 
Sistema circulatorio
Sistema circulatorioSistema circulatorio
Sistema circulatorio
 
ExcellenceAdUBER
ExcellenceAdUBERExcellenceAdUBER
ExcellenceAdUBER
 
10 koligatif larutan
10 koligatif larutan10 koligatif larutan
10 koligatif larutan
 
Aula do dia 30 04 - professora daniele souto
Aula do dia 30 04 - professora daniele soutoAula do dia 30 04 - professora daniele souto
Aula do dia 30 04 - professora daniele souto
 
Feria del libro 2013
Feria del libro 2013Feria del libro 2013
Feria del libro 2013
 
Religiones[1][1]
Religiones[1][1]Religiones[1][1]
Religiones[1][1]
 
Agenda
AgendaAgenda
Agenda
 
Cebtis Vainilla2008
Cebtis Vainilla2008Cebtis Vainilla2008
Cebtis Vainilla2008
 
PresentacióN Doziz
PresentacióN DozizPresentacióN Doziz
PresentacióN Doziz
 
Reference Letter RPM
Reference Letter RPMReference Letter RPM
Reference Letter RPM
 
MArch Diploma - Andrei Mogos
MArch Diploma - Andrei MogosMArch Diploma - Andrei Mogos
MArch Diploma - Andrei Mogos
 
Letter from Kathy Zeyer
Letter from Kathy ZeyerLetter from Kathy Zeyer
Letter from Kathy Zeyer
 
Dr. Weise's Recommendation Letter.PDF
Dr. Weise's Recommendation Letter.PDFDr. Weise's Recommendation Letter.PDF
Dr. Weise's Recommendation Letter.PDF
 
Ativ 1 4-tecnologianaescola_marissandra
Ativ 1 4-tecnologianaescola_marissandraAtiv 1 4-tecnologianaescola_marissandra
Ativ 1 4-tecnologianaescola_marissandra
 

Similar to 1

інформатика алгор та прогр по підручнику верлань 2 стор на 1 листку
інформатика алгор та прогр по підручнику верлань 2 стор на 1 листкуінформатика алгор та прогр по підручнику верлань 2 стор на 1 листку
інформатика алгор та прогр по підручнику верлань 2 стор на 1 листкуШкола №7 Миргород
 
Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1Dmitry Chabanenko
 
09 Static Polymorphism
09 Static Polymorphism09 Static Polymorphism
09 Static Polymorphismolegapster
 
Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++Alexander Kuzmenko
 
Презентація:Властивості множення раціональних чисел
Презентація:Властивості множення раціональних чиселПрезентація:Властивості множення раціональних чисел
Презентація:Властивості множення раціональних чиселsveta7940
 
01 c# basics
01 c# basics01 c# basics
01 c# basicseleksdev
 
Programuvanna na movi_pascal
Programuvanna na movi_pascalProgramuvanna na movi_pascal
Programuvanna na movi_pascal1cana1
 
Основи мови Ci
Основи мови CiОснови мови Ci
Основи мови CiEscuela
 
Osnovi algoritmizatsiyi ta_programuvannya
Osnovi algoritmizatsiyi ta_programuvannyaOsnovi algoritmizatsiyi ta_programuvannya
Osnovi algoritmizatsiyi ta_programuvannyaSapetko
 
опорні схеми
опорні схемиопорні схеми
опорні схемиIrina Tabanets
 
рядки
рядкирядки
рядкиcit-cit
 
Основи програмування .Паскаль ч.1
Основи програмування .Паскаль ч.1Основи програмування .Паскаль ч.1
Основи програмування .Паскаль ч.1rznz
 

Similar to 1 (20)

2
22
2
 
2
22
2
 
5971 789623
5971 7896235971 789623
5971 789623
 
інформатика алгор та прогр по підручнику верлань 2 стор на 1 листку
інформатика алгор та прогр по підручнику верлань 2 стор на 1 листкуінформатика алгор та прогр по підручнику верлань 2 стор на 1 листку
інформатика алгор та прогр по підручнику верлань 2 стор на 1 листку
 
Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1
 
09 Static Polymorphism
09 Static Polymorphism09 Static Polymorphism
09 Static Polymorphism
 
Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++
 
Презентація:Властивості множення раціональних чисел
Презентація:Властивості множення раціональних чиселПрезентація:Властивості множення раціональних чисел
Презентація:Властивості множення раціональних чисел
 
01 c# basics
01 c# basics01 c# basics
01 c# basics
 
3018 1
3018 13018 1
3018 1
 
Programuvanna na movi_pascal
Programuvanna na movi_pascalProgramuvanna na movi_pascal
Programuvanna na movi_pascal
 
рядки в C ++
рядки в C ++рядки в C ++
рядки в C ++
 
Основи мови Ci
Основи мови CiОснови мови Ci
Основи мови Ci
 
3
33
3
 
3
33
3
 
Osnovi algoritmizatsiyi ta_programuvannya
Osnovi algoritmizatsiyi ta_programuvannyaOsnovi algoritmizatsiyi ta_programuvannya
Osnovi algoritmizatsiyi ta_programuvannya
 
опорні схеми
опорні схемиопорні схеми
опорні схеми
 
рядки
рядкирядки
рядки
 
Основи програмування .Паскаль ч.1
Основи програмування .Паскаль ч.1Основи програмування .Паскаль ч.1
Основи програмування .Паскаль ч.1
 
Паскаль
ПаскальПаскаль
Паскаль
 

1

  • 1. Мова СМова Сі++і++ Алфавіт, базові типи і опис даних
  • 2. План: 1.Імена в Сі++ 2.Змінні в Сі++ 3.Константи в Сі++ 4.Вирази в Сі++ 5.Операції порівняння і привласнення в Сі++ 6.Арифметичні операції 7.Логічні операції
  • 3. Імена в Сі++ Алфавіт У алфавіт мови Сі++ входять: • латинські букви: від а до z (рядкові) і від A до Z (прописні); • десяткові цифри: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; • спеціальні символи: "{ }, I [ ] ( ) + - / % ; ' : ? < = > _ ! & # ~ ^ . Комбінації деяких символів, не розділених пропусками, інтерпретуються як один значимий символ. До них відносяться: ++ — == && || «»>=<=+=-=*=/=?: /**///
  • 4. /* Це коментар, допустимий в Сі і Сі++ */ // Це рядковий коментар, використовуваний тільки в Сі++
  • 5. Лексеми — одиниці тексту програми, які при компіляції сприймаються як єдине ціле і не можуть бути розділені на дрібніші елементи. До лексем відносяться: ідентифікатори, службові слова, константи, знаки операцій, роздільники
  • 6. Ідентифікатори Послідовність латинських букв, цифр, символів підкреслення (_), що розпочинається з букви або символу підкреслення, є ідентифікатором. Наприклад: В12 rus hard_RAM_disk MAX ris_32 В Сі++ розрізняються прописні і рядкові букви. Наприклад: flag, FLAG, Flag, FlAg — різні ідентифікатори
  • 7. Службові (ключові) слова Службові слова в Сі++ — це ідентифікатори, призначення яких однозначно визначене в мові.
  • 8. Типи даних У Сі++ є чотири базові арифметичні (числових) типи даних. З них два цілочисельних — char, int — і два плаваючих — float і double. В програмах можна використовувати деякі модифікації цих типів, що описуються за допомогою службових слів — модифікаторів. Існують два модифікатори розміру — short (короткий) і long (довгий) — і два модифікатори знаків — signed (знаковий) і unsigned (беззнаковий). Знакові модифікатори застосовуються тільки до цілих типів.
  • 9. Таблиця типів данихТаблиця типів даних Тип даних Розмі р (байт) Діапазон значень Еквівалентна назва типа char 1 -128…+127 signed char int 2/4 залежить від системи signed, signed char unsigned char 1 0…255 немає unsigned int 2/4 залежить від системи unsigned short int 2 -32768…32767 short, signed short int unsigned short 2 0…655535 unsigned short int long int 4 -2147483648…2147483647 long, signed long int unsigned long int 4 0…4294967295 unsigned long float 4 +/-(3.4Е-38…3.4Е+38) ні double 8 +/-(3.4Е-308…1.7Е+308) ні
  • 10. Аналізуючи таблицю, можна зробити наступні висновки: • якщо не вказаний базовий тип, то за умовчанням мається на увазі int; • якщо не вказаний модифікатор знаків, то за умовчанням мається на увазі signed; • з базовим типом float модифікатори не вживаються; • модифікатор short застосований тільки до базового типу int .
  • 11. У мові Сі++ величини типу char можуть розглядатися в програмі і як символи, і як цілі числа. Усе залежить від способу використання цієї величини. У разі інтерпретації величини типу char як символу її числове значення являється ASCII -кодом. Наступний приклад ілюструє сказане. char a = 6 5; printf("%c", a);/*На екрані з'явиться символ А*/ printf("%d", a);/*На екрані з'явиться число 65*/ Символи "%c" є специфікацією формату введення/виведення символьних даних, а "%d" — специфікацією для цілих чисел
  • 12. У останні версії Сі++ доданий окремий логічний тип з ім'ям bool. Його відносять до різновиду цілих типів даних. Опис змінних в програмах на Сі++ має вигляд: ім'я_типу список змінних; Приклади описів : char symbol, cc; unsigned char code; int number, row; unsigned long long_number; float x, X, cc3; double e, b4; long double max_num;
  • 13. ініціалізація змінних – це одночасний опис з наданням початкових значень змінних. Опис з ініціалізацією проводиться за наступною схемою: тип ім'я_змінної = початкове_значення Наприклад: float pi=3.14159, c=l.23; unsigned int year=2000;
  • 14. Константи Запис цілих констант Цілі десяткові числа, що розпочинаються не з нуля, наприклад: 4, 356, — 128. Цілі вісімкові числа, запис яких розпочинається з нуля, наприклад: 016, 077. Запис символьних і строкових констант Символьні константи заключають в апострофи. Наприклад: 'А', 'а', '5 '+'. Строкові константи, що є символьними послідовностями, заключають в подвійні лапки. Наприклад: "rezult", "введіть початкові дані".
  • 15. Особливий різновид символьних констант представляють управляючи символи. Їх призначення — управління виводом на екран. У програмі на Сі++ вони зображуються парою символів, перший з яких ''. Ось деякі з символів, що управляють : 'n' — перехід на новий рядок; 't' — горизонтальна табуляція; 'а' — подача звукового сигналу.
  • 16. Іменовані константи (константні змінні). В програмі на Сі++ можуть використовуватися іменовані константи. Вживане для їх визначення службове слово const прийнято називати кваліфікатором доступу. Кваліфікатор const вказує на те, що ця величина не може змінюватися впродовж усього часу роботи програми. Зокрема, вона не може розташовуватися в лівій частині оператора привласнення. Наприклад : const float pi=3.14159; const int iMIN=l, iMAX=1000;
  • 17. Визначення констант на стадії препроцесорної обробки програми. Ще однією можливістю ввести іменовану константу являється використання препроцесорної директиви #define в наступному форматі: #define <ім'я константи> <значення константи> Наприклад: #define iMIN 1 #define iMAX 1000 На стадії препроцесорної обробки вказані імена замінюються на відповідні значення. Наприклад, якщо в програмі є присутнім оператор X=iMAX - iMIN; то в результаті препроцесорної обробки він набере вигляду: Х=1000-1;
  • 18. Константи перераховуваного типу Цей засіб мови дозволяє визначати послідовність цілочисельних іменованих констант. Опис перераховуваного типу розпочинається із службового слова enum, а подальший список констант полягає у фігурні дужки. Наприклад: enum {A, B, C, D}; В результаті імені А буде зіставлена константа 0, імені В — константа 1, C — 2, D — 3. За умовчанням значення першої константи дорівнює нулю. Для будь-якої константи можна явно вказати значення. Наприклад: enum {A=10, B, C, D}; В результаті будуть встановлені наступні відповідності: А = 10, B = 11, C = 12, D = 13.
  • 19. Операції і вирази Ось декілька прикладів арифметичних виразів, записаних за правилами мови Сі ++: a+b 12.5 - z 2*(X+Y) х++ х+++b --n*2 n*=1
  • 20. Арифметичні операції До арифметичних операцій відносяться: — віднімання або унарний мінус; + складання або унарний плюс; * множення; / ділення; % ділення по модулю (аналог Mod в Паскале); ++ унарна операція збільшення на одиницю (інкремент); -- унарна операція зменшення на одиницю (декремент). Операція % застосована тільки до цілих чисел
  • 21. Операції інкремента і декремента можуть застосовуватися тільки до змінних і не можуть — до констант і виразів. Операція ++ збільшує значення змінної на одиницю, операція -- зменшує значення змінної на одиницю. Обидва знаки операції можуть записуватися як перед операндом (префіксна форма), так і після операнда (постфіксна форма), наприклад: ++х або х++, --а або а--. Три наступні оператори дають один і той же результат: х=х+1; ++х; х++
  • 22. Відмінність проявляється при використанні префіксною і постфіксною форм у виразах. Перший приклад: а=3; b=2; с=а++*b++; В результаті виконання змінні отримають наступні значення: а=4, b=3, c=6. Другий приклад: а=3; b=2; с=++а*++b; Результати будуть такими: а = 4, b = 3, с = 12.
  • 23. Пояснення наступне: при використанні постфіксної форми операції ++ і -- виконуються після того, як значення змінної було використане у вираженні, а префіксні операції — до використання. Тому в першому прикладі значення змінної с обчислювалося як твір 3 на 2, а в другому — як твір 4 на 3. По убуванню старшинства арифметичні операції розташовані в наступному порядку: ++, -- — (унарний мінус) *, /, % +, - Однакові за старшинством операції виконуються в порядку зліва направо.
  • 24. Операції відношення У Сі++ слід лише звернути увагу на відмінність в записі операцій «рівно» і «не рівно». < менше <= менше або рівно > більше >= більше або рівно = = рівно ! = не рівно. В стандарті Сі немає логічного типу даних. Тому результатом операції відношення є ціле число: якщо відношення істинне — 1, якщо помилково —0. Приклади відношень: а<0, 101>=105, 'а'=='А', 'а"='А' Результатом другого і третього стосунків буде 0 — брехня; результат четвертого відношення дорівнює 1 — істина; результат першого відношення залежить від значення змінної а.
  • 25. Логічні операції Три основні логічні операції в мові Сі++ записуються. ! операція заперечення (НІ) && визначаються таблицею істинностікон'юнкція, логічне множення (І) | | диз'юнкція, логічне складання (ЧИ). Правила їх виконання . Наприклад, логічний вираз, що відповідає системі нерівностей 0 < х < 1 в програмі на Сі++ запишеться у вигляді наступного логічного виразу: х>0 && х<1
  • 26. По убуванню пріоритету логічні операції і операції відношення розташовані в наступному порядку: ! > < >= <= == != && || Знаки бітових логічних операцій : & порозрядна кон'юнкція (И) | порозрядна диз'юнкція (ЧИ) ^ що порозрядне, що виключає АБО ~ порозрядне заперечення (НЕ). Бітові логічні операції разом з операціями порозрядного зрушення вліво (<<) і управо (>>) дозволяють дістатися до кожного біта внутрішнього коду. Найчастіше такі дії доводиться виконувати в системних програмах. У цьому посібнику ми їх розглядати не будемо.
  • 27. Операція привласнення Знак операції привласнення =. Привласнення, як будь-який інший знак операції, може кілька разів входити у вираження. Наприклад: а=b=с=х+у; Привласнення має найнижчий пріоритет (нижче тільки у операції «кома»). Операція привласнення — правоасоциативна. Це означає, що дещо підряд розташованих привласнень виконуються справа наліво. Тому в приведеному вище виразі першої виконається операція складання, потім змінною з привласненим значенням суми, потім це значення привласниться змінній b і у кінці — змінній а.
  • 28. У мові Сі++ є додаткові операції привласнення, що поєднують привласнення з виконанням інших операцій. Серед них: +=, -=, /=, *=, %=. Пріоритет у них такий же, як і у простого привласнення. Приклади використання цих операцій
  • 29. В процесі обчислення виразів з різнотипними операндами проводиться автоматичне перетворення типів величин. Знання правил, по яких відбуваються ці перетворення, попереджає деякі помилки в записі виразів. Суть правил перетворення при виконанні бінарних операцій зводиться до наступного: • перетворення не виконується, якщо обидва операнди мають однаковий тип; • при різних типах операндів відбувається приведення величини з молодшим типом до старшого типу (окрім операції привласнення); • при виконанні операції привласнення величина, отримана в правій частині, перетвориться до типу змінної, що стоїть зліва від
  • 30. Цілі типи за збільшенням старшинства розташовані в такому порядку: char→shot→int→long Порядок старшинства речових типів наступний: float→double→long double Слід мати на увазі, що при перетворенні цілої величини до плаваючого типу може статися втрата точності (замість 1 вийде 0,999). Наступний приклад ілюструє порядок виконання операцій і перетворення типів, що відбуваються, при обчисленні вираження (рис. 1, цифри вгорі — порядок операцій). char ch; int i; float f; double d; long double r;