1 Проф. Куссуль Н.М. Операции в С++. 2 Введение В языке C++ доступ к объектам и функциям обеспечивается выражениями операций операторов Выражения состоят.

Презентация:



Advertisements
Похожие презентации
1 Проф. Куссуль Н.М. Операции в С++. 2 Введение В языке C++ доступ к объектам и функциям обеспечиваотся выражениями операций операторов Выражения состоят.
Advertisements

Лекція 2 Тема: Операції. Вирази. Оператори.. План Операції Основні операції Порядок виконання операцій Додаткові операції Вирази Оператори Оператор присвоєння.
Типи даних мови Visual Basic та їх опис. Опис величин Величина - це об'єкт, який має стале або змінне значення. Основні характеристики величин: ім'я,
Базові структури алгоритмів Інформатика-11 Тема-2.
Ковальчук О.М КОМАНДИ РОЗГАЛУЖЕННЯ (Turbo Pascal 7.0) КОМАНДИ РОЗГАЛУЖЕННЯ (Turbo Pascal 7.0) Інформатика-11 Тема-4 Ковальчук О.М., 2007.
Розгалуження в алгоритмах і програмах Алгоритми з розгалуженням.
Урок 22 7 клас ЕЛЕКТРОННІ ТАБЛИЦІ ТП MS EXCEL. Використання формул і функцій
Основи алгоритмізації та програмування Вказівка повторення. Цикли.
Оператори. Введення і виведення даних. Оператор присвоювання Оператори це команди програми. Оператор присвоювання є основним оператором мови програмування.
Цикли в мові С++ Цикл - це процес виконання певного набору команд деяку кількість разів.
Вказівники Вказівник (або покажчик) – особливий тип даних, значенням якого є адреса певного байта оперативної памяті. Значення покажчика - це беззнакове.
Поняття циклу. Класифікація циклів. Порівняльна характеристика циклів. Формати команд повторення мовою програмування.
Тема 1. Вступ. Основи алгоритмізації Урок 3. Типові операції алгоритмізації Урок 4. Реалізація алгоритму на алгоритмічній мові Основи алгоритмізації та.
Це така алгоритмічна конструкція, де за певних умов виконується команда або серія команд. З Передумовою (WHILE) З Післяумовою (REPEAT) З Параметром (FOR)
Думай і роби, роби і думай. Іван Андрійович Крилов.
Програми з розгалуженнями.Команда IF Підготувала Крилік Анастасія 7-Д.
Бройченко А.Г КОМАНДИ ПОВТОРЕННЯ (Turbo Pascal 7.0) КОМАНДИ ПОВТОРЕННЯ (Turbo Pascal 7.0) Інформатика-11 Тема-4.
Електронні таблиці EXCEL Введення формул до ЕТ. Формули призначені для виконання дій над вмістом клітинок (над даними) згідно з умовою конкретної задачі.
Розділ 3. Алгоритмізація і програмування п Алгоритми й основні алгоритмічні структури. Складання обчислювальних алгоритмів.
Урок 23 7 клас ВИКОРИСТАННЯ ВБУДОВАНИХ ФУНКЦІЙ У ТП EXCEL.
Транксрипт:

1 Проф. Куссуль Н.М. Операции в С++

2 Введение В языке C++ доступ к объектам и функциям обеспечивается выражениями операций операторов Выражения состоят из операций и операторов

3 Операции арифметические логические отношения

4 Арифметические операции Арифметические операции применимы к любым комбинациям простых типов (bool, int, char, double): + (плюс, унарный и бинарный) - (минус, унарный и бинарный) * (умножение) / (деление) % (остаток от деления)

5 Пример арифметических операций cout

6 Операции отношения Операции отношения применимы к любым комбинациям простых типов: = = (равно) ! = (не равно) > (больше) < (меньше) < = (меньше или равно) > = (больше или равно)

7 Пример операций отношения (a == 10) // Если два значения равны (a != b) // Если два значения не равны (a > 5) // Если первое значение больше второго (b

8 Логические операции Логические операции применимы к любым выражениям: ! (отрицание) && (логическое И) || (логическое ИЛИ)

9 Приоритеты и порядок выполнения операций Пріорит ет Знаки операційНазви операційПорядок Виконання 1.. -> [] () вибір елемента за іменем вибір елемента за вказівником вибір елемента за індексом виклик функції або конструювання значення постфіксний інкремент постфіксний декремент зліва-направо 2.sizeof ~ ! + - & new delete (ім'я_типу) розмір операнда в байтах префіксний інкремент префіксний декремент інверсія (порозрядне заперечення) логічне заперечення унарний плюс унарний мінус адреса виділення пам'яті або створення звільнення пам'яті або знищення перетворення типу справа-наліво 3..* ->* вибір елемента по імені через вказівник вибір елементу по вказівнику через вказівник зліва-направо

10 Приоритеты и порядок выполнения операций 4.*/%*/% множення ділення остача від ділення цілих (ділення по модулю) зліва-направо додавання віднімання зліва-направо 6.> зсув вліво зсув вправо зліва-направо 7.< > = менше більше менше або дорівнює більше або дорівнює зліва-направо 8.== !== дорівнює не рівне зліва-направо

11 Приоритеты и порядок выполнения операций 9.&порозрядне Ізліва-направо 10.^порозрядне виключаюче АБОзліва-направо 11.|порозрядне АБОзліва-направо 12.&&логічне Ізліва-направо 13.||логічне АБОзліва-направо 14.?:умовна операціясправа-наліво 15.= *=, /=, %=, +=, -=, &=, ^=, |= присвоювання (просте і складене)справа-наліво 16.throwгенерація виключеннясправа-наліво 17.,послідовність виразівзліва-направо

12 Выражение с приоритетом операций Рассмотрим выражение a =(1+2)*(2+3); C++ вычисляет данное выражение в следующем порядке: a = (1 + 2) * (2 + 3)= (3) * (2 + 3)= = 3 * (5)= 3*5 = 15;

13 Другие операции Операции сдвига: > (сдвиг вправо на 1 разряд (перегружен для ввода)) Поразрядные операции: & (поразрядная конъюнкция битовых представлений значений целочисленных операндов) | (поразрядная дизъюнкция битовых представлений значений целочисленных операндов) ^ (поразрядная исключающая дизъюнкция битовых представлений значений целочисленных операндов) Побитовые операции: ~ (операция инвертирования или побитового отрицания) ! (операция логического отрицания)

14 Другие операции Для увеличения (уменьшения) значения переменной в С++ используют следующие операции: Операции автоинкрементирования: a++; ++a; Операции автодекрементирования: a--; --a; Пример. Операции автоинкрементирования и автодекрементирования j =++i; //равносильно i =i+1; j=i; (префиксная форма) j =i++; //равносильно j =i; i= i+1; (постфиксная форма)

15 Другие операции Операция с тремя операндами (тернарная): выражение 1 ? выражение 2 : выражение 3 выражение 1 ? выражение 2 : выражение 3 1) Вычислить выражение 1. 2) Если выражение 1 = true, тогда вычисляется значение выражения 2, которое и становится значением выражения. 3) Если выражение 1 = false, тогда вычисляется выражение 3. Его результат является результатом всего выражения. Пример. Операция с тремя операндами х =(y

16 Операторы в С++ Операторы (присваивания, передачи управления): Выражение присваивания ­ включает в себя оператор присваивания =. Пример. Выражение с оператором присваивания а = b + 1; y = z = 3.5; a = b + (c=3); //равносильно c=3 и a = b + c, Операторы присваивания могут объединяться с другими операторами a+=b; // a=a+b a*=a+b; // a=a*(a+b);

17 Умовний оператор Умовний оператор забезпечує виконання або невиконання деякого оператора або групи операторів в залежності від заданої умови if (умовний вираз) оператор1; if (умовний вираз) оператор1; else оператор2; Приклад. Знайти мінімум з двох чисел x та y if (x

18 Оператори switch і break Зручним засобом вибору з множини варіантів є оператор switch, який має наступну форму запису: switch (вираз) { case константа1: оператор1; break; … case константаN: операторN; break; default : оператор; break; }

19 Приклад оператора switch switch (rez) { case 5: соut

20 Типи операторів циклів При виконанні програми часто виникає необхідність неодноразового повторення однотипних обчислень над різними даними. цикли Для цих цілей використовують так звані цикли. Цикл Цикл представляє собою частину програми, у якій одні й ті самі обчислення реалізуються неодноразово над різними значеннями одних й тих самих змінних (обєктів). Для організації циклів в С++ використовуються наступні три оператора: while, for і do-while

21 Цикл типу while Цикл типу while є циклом з передумовою. Він використовується у випадку, коли по-перше, не відома точна кількість повторів по-друге, при цьому немає необхідності, щоб цикл неодмінно був виконаний хоча б один раз. Синтаксис while (вираз) оператор;

22 Цикл типу while В якості виразу зазвичай використовуються умовні вирази. В загальному випадку можна використовувати вирази довільного типу. На місці оператора може стояти простий оператор або сукупність операторів, обєднаних у блок дужками {}. Якщо вираз істинний (не рівний нулю), то тіло циклу виконується один раз, далі вираз перевіряється знову. Ітерації (перевірка умови та тіло циклу) виконуються до тих пір, поки вираз не стане хибним (рівним нулю).

23 Приклад. Цикл while Потрібно вгадати число 25 за 10 ітерацій int i=1, rez=1; while (i++ > rez; } if (i==10) cout

24 Цикл типу for Цикл типу for є циклом з параметрами і зазвичай використовується у випадку, коли відома точна кількість повторів обчислень. При цьому виконуються три операції: ініціалізація лічильника циклу порівняння його значення з деяким граничним значенням зміна значення лічильника при кожному проходженні тіла циклу. Цикл for має наступну форму запису: for (вираз1; вираз2; вираз3) оператор;

25 Приклад. Цикл for for (i=1, rez=1; i

26 Цикл типу do-while Цикл типу do-while є циклом з постумовою і використовується у тих випадках, коли невідома точна кількість повторів, але водночас цикл необхідно виконати не менше одного разу Цикл типу do-while дуже схожий на цикл типу while Різниця тільки в тому, що перевірка істинності виразу в циклі do-while має місце після виконання тіла циклу

27 Цикл типу do-while Цей цикл має наступну форму запису: do { оператор; } while (вираз); Приклад do cin >> r; while (r!=13); cout

28 Вкладені цикли Вкладеним циклом називають конструкцію, в якій один цикл виконується всередині другого. Внутрішній цикл виконується повністю під час кожної ітерації зовнішнього циклу. Приклад. Заповнити екран символами '#'. for ( i=1; i

29 Керуючі оператори в циклах Виконання оператора break призводить до виходу з циклу, в якому він знаходиться, і переходу до наступного за циклом оператора. Якщо оператор break знаходиться всередині вкладених циклів, то його дія поширюється тільки на той цикл, в якому він безпосередньо знаходиться. Приклад. Використання оператора break Треба вгадати число з 10 спроб i=1; while( i++ >rez; if (rez==15) break; cout

30 Керуючі оператори в циклах Оператор continue може використовуватися тільки серед операторів тіла циклу. Цей оператор призводить до переходу до наступної ітерації без завершення поточної. Приклад. Вводяться числа місяця для обробки. Необхідно здійснити перевірку коректності вводу. Число 31 означає кінець обробки. while (day!=31) { cin >> day; if (day 31) continue; // Обробка числа day }

31 Операторы new и delete Операторы new и delete управление свободной памятью Выделяют память из кучи (heap) и освобождают ее. Куча (heap) область памяти для объектов, чей срок службы управляется программой. Они более удобны и заменяют библиотечные функции malloc(), calloc() и free(). 3 способа использования оператора new: new type_name float* r= new float; new(type_name) float* r= new(float); new type_name[expression] распределение памяти для массива. float*r=new float[20];

32 Примеры Оператор new r=new float(5); // r=5 r=new float[5]; //r массив из 5 элементов new возвращает базовый адрес объекта; если память недоступна 0 Оператор delete delete r; // удаляет скаляр delete [] r; // удаляет массив тип возвращаемого значения void.

33 Завдання на додаткові бали Перекласти на українську мову російськомовні слайди презентації