Similar presentations:
Данные. Арифметика. (Урок 2)
1. Урок 2. ДАННЫЕ. АРИФМЕТИКА.
УРОК 2. ДАННЫЕ.АРИФМЕТИКА.
Продолжаем мучаться
2. План занятия:
Переменная – что это такое?Типы переменных
Арифметические операции и дополнения к ним ( + - * / % ( ) )
Побитовая арифметика
3. Переменная – всему голова!
Переменная – это своего рода пространство, в котором можночто-то хранить ОПРЕДЕЛЕННОГО ТИПА.
Где лучше хранить
данные вещи?
4. Основные простые типы данных C++
ЗАНИМАЕМОЕКОЛИЧЕСТВО ПАМЯТИ
ОДНОЙ ПЕРЕМЕННОЙ (В
БАЙТАХ)
НАЗВАНИЕ
ДИАПАЗОНЫ ЧИСЕЛ
char
1
-128 … +127
short
2
-32768 … +32767
int
4
-2 147 483 648 … 2 147 483 647
float
4
-2 147 483 648.0 … 2 147 483
647.0
double
8
-9, 22 * 10^18… 9,22 * 10^18
bool
1
true - false
5. Арифметические операторы
+ - сложение переменных ( пример: 45+17)- - вычитание переменных ( пример: 19-29)
* - умножение переменных ( пример: (-4)*(-8) )
/ - деление переменных ( пример: 4.54 / 17.19 )
% - остаток от деления ( пример: 12 % 5 = 2)
6. Пример программы
…int main(){
int a = 7, b = 8, c = 9;
// Создание переменных целого типа
// Создание переменных дробного типа (двойная точность)
// Создание переменных логического типа
double a1 = 8.63, b1 = -1234.56,c1 = 2.34;
bool f = true, f2 = false;
int IntResult = ( a + b + c) / (a*b) – c;
double DoubleResult = ( a1+ b1 + c1) / (a1*b1) – c1;
bool BoolRes = f+f2
return 0;
}
Арифметические операции
7. Ввод переменных с клавиатуры
ДЛЯ ВВОДА ИСПОЛЬЗУЕТСЯ ОБЪЕКТ CINint main(){
int a = 0, b = 23;
cin >>a>>b; // Допустим, что в консоли мы ввели через Enter два
// целых числа ( 34 и 45 )
}
cout <<a<<“\t”<< b; // На экране отобразиться “34 45”
return 0;
8. Вычисление математических выражений
Чтобы работать с различными математическими операциями нам необходимоподключить спец. заголовочный файл: прописать строку #include <cmath>
#include <iostream>
#include <cmath>
using namespace std;
int main(){
…
…
int main(){
int a = sin(1/2)*cos(3);
return 0;
}
9.
10. Побитовая арифметика
141110
Каждое число можно представить в виде ДВОИЧНОЙ ЗАПИСИ
10
2
1 1 1 0
16 8 4 2 1 =
Построение степеней двойки производится справа налево
8+4+2=14
11. Практикум
Перевести числа 80, 63, 9 вдвоичную систему счисления
12. Ответы
8063
9
1010000 = 64+16
111111 = 32+16+8+4+2+1
1001 = 8+1
13. Битовые операторы
ОператорДействие
& (and)
| (or)
^ (xor)
~ (not)
>>
<<
И
ИЛИ
Исключающее ИЛИ
Дополнение
Сдвиг вправо
Сдвиг влево
14. Операция & (and)
Операция & (and)80
63
16
&
1010000
0111111
0010000
Таблица истинности
0
0
1
1
0
1
0
1
0
0
0
1
15. Операция ^ (or)
8063
127
|
1010000
0111111
1111111
Таблица истинности
0
0
1
1
0
1
0
1
0
1
1
1
16. Операция ^ (xor)
8063
111
|
1010000
0111111
1101111
Таблица истинности
0
0
1
1
0
1
0
1
0
1
1
0
17. Операция ~
8047
1010000
~
0101111
Таблица истинности
0
1
18. Сдвиги (<< и >>)
Сдвиги (<< и >>)1010000 >>3
0001010 <<5
1000000
19. Пример кода
int main(){int a = 56,b = 23;
int c = a & b,
d = c | a,
r = (d << c) & a | b;
}
return 0;
20. Домашняя работа
В сборнике задач решить задачи, соответствующие своему варианту ( номер пожурналу и есть ваш вариант). Задачи решить в базовом, среднем и высоком
уровне (кто как успевает). Каждая задача в ОДНОМ ФАЙЛЕ. Пример на след.
слайде.
21. Пример домашнего задания (оформлять именно так) в приложенных файлах, так что не забываем смотреть их
Пример домашнего задания (оформлять именно так) вприложенных файлах, так что не забываем смотреть их
22. Материалы для самостоятельной подготовки
http://cppstudio.com/post/271/ - типы данныхhttp://cppstudio.com/post/259/ - арифметические операции
http://cppstudio.com/post/500/ - битовые операции and or xor not
http://www.c-cpp.ru/books/bitovye-operatory - тоже про битовые операторы, но
еще и со сдвигами