Операции над значениями простых типов данных — КиберПедия 

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Операции над значениями простых типов данных

2017-11-22 157
Операции над значениями простых типов данных 0.00 из 5.00 0 оценок
Заказать работу

Основные теоретические сведения

Существуют 6 основных битовых операторов.

& Поразрядное И

| Поразрядное включающие ИЛИ

^ Поразрядное исключающие ИЛИ

‹‹ Сдвиг влево

›› Сдвиг вправо

~ Одноместное поразрядное дополнение до единицы

Таблица операций и их приоритетность
Приоритет Знак операции Смысл операции Применение Направление выполнения
    () Скобки В выражении (x+y)/2 Слева направо
. Точка В имени a.x
[] Кв.скобки Для индексации элементов мас- сива a[I]
-> Указатель Обращение к полю структуры через указатель l>next
    Унарные * Косвенная адресация Для определения указателя и разыменование указателя int *ptr; Справа налево  
& Получение адреса int x=5; ptr=&x;
! НЕ логическое (a!=b)
~ (инверсия) Дополнение до 1 для поразрядных операций unsigned char A=0xE; ~ A = 0001  
++ инкримент .i++; ++I;
-- декримент .i--; --I;
+ Знак числа +5; +a
- Знак числа -5.12; -b
(тип) имя переменной Приведение типа переменной int x; long l; l=(long) x; или.l=long(x);
Sizeof(тип) Sizeof(перем.) Размер ячейки памяти sizeof(int)
3 мультипликативные * / % Умножить Деление Остаток при делении целого на целое 2*3; 5/2=2; 5.2/2=2.6;1/2=0 5%2=1 Слева направо
аддитивные + - Сложить Вычесть 2+3 2-3 Слева направо
поразрядные <<   >> Сдвиг влево двоичного кода Сдвиг вправо   int x=7; x=x<<2;// x=111<<2=100 X=x>>1; 100>>1=010 Слева направо
отношения <,>,>=,<=   A<=B Слева направо
сравнения == != Равно НЕ равно A= =B; A!=B Слева направо
  & Поразрядное И 111 & 100 =100 Слева направо
  | Поразрядное ИЛИ 111 | 100 =111 Слева направо
  ^ Исключающее ИЛИ для поразрядных операций .unsigned int x=0xF,a=1,A; A=x^a; 1111 ^ 0001=1110 Слева направо
  && Логическое И (a>0 && a<1) Слева направо
  | | Логическое ИЛИ (a<0||a>1) Слева направо
  ?: Условное выражение Max = (10>=12)? 10: 12; т.е. max = 12 Слева направо
  Операции присваивания: =; *=; +=; и т.д.   A=2; a*=2; b=c=a; Слева направо
  , Запятая. Последовательное выполнение действий. Результат операции – результат самого левого выражения C=A=2,b=7; //c=7 Слева направо

 

// L1_Z2.cpp: определяет точку входа для консольного приложения.

//

 

#include "stdafx.h"

#include "iostream"

#include "locale.h"

 

using namespace std;

 

 

int main()

{

setlocale(LC_ALL, "rus");

int a, b;

cout << "Введите два целых числа: ";

cin >> a >> b;

cout << " a + b = " << a + b <<

"\n a * b = " << a * b <<

"\n a - b = " << a - b <<

"\n b - a = " << b - a <<

"\n a / b = " << a / b <<

"\n a % b = " << a % b <<

"\n b % a = " << b % a <<

"\n b / a = " << b / a <<

"\n a / 2 = " << a / 2 <<

"\n a / 2.0 = " << a / 2.0;

double c;

float d;

cout << "\nВведите два вещественных числа: ";

cin >> c >> d;

cout << " c + d = " << c + d <<

"\n c * d = " << c * d <<

"\n c - d = " << c - d <<

"\n d - c = " << c - d <<

"\n c / d = " << c / d <<

"\n d / c = " << d / c <<

"\n c / a = " << c / a;

unsigned char ua = '255', ub = '10';

cout << "\nВведите значения в две переменные: ";

cin >> ua >> ub;

cout << "!ua = " <<!ua << "\n!ub = " <<!ub

<< "\n~ua = " << ~ua << "\n~ub = " << ~ub

<< "\nua & ub = " << (ua & ub)

<< "\nua | ub = " << (ua | ub)

<< "\nua << 2 = " << (ua << 2)

<< "\nub << 3 = " << (ub << 3)

<< "\nua >> 2 = " << (ua >> 2)

<< "\nub >> 3 = " << (ub >> 3);

char ch = 'A';

cout << "\nКод символа = " << int(ch) << endl;

printf("Код символа = %d\n", ch);

cout << ch + 1 << endl;

system("PAUSE");

return 0;

}

 

Выводы

В процессе выполнения лабораторной работе я получил знания как выводить и вводить данные, узнал какие типы данных существуют.

На выполнения этой лабораторной работы я потратил 12ч

Мне очень понравилось пользоваться этим великолепным компилятором.

Я теперь научился...


Поделиться с друзьями:

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.01 с.