Вирази та операції


НазваВирази та операції
Дата конвертації17.02.2013
Розмір445 b.
ТипПрезентации


Вирази та операції

  • Вираз – послідовність операндів, об’єднаних знаками операцій та круглими дужками. Операнди – об’єкти, над якими виконуються операції; операції – задають дії над операндами.

  • Приклад:

  • 0.5*(z+w)>=(z-u)/(w-u) kor=sin(x)-2*exp(x-0.7)

  • Класифікація операцій:

  • 1) за кількістю операндів

  • - Унарні (-A)

    • Бінарні (A+B)
    • Тринарні ((A)?B:C)

  • 2) за видом дій

  • - арифметичні

    • операції присвоювання;
    • операції відношення;
    • логічні;
    • порозрядні( побітові), інші.
    • за приоритетом поділяють на 16 рівнів. Найвищій мають операції звертання до функції, до елементу масиву, структури; потім – інкремент та декремент,…., арифметичні, .., відношення,.., кома
    • Порядок виконання – за приоритетом та залежно від
    • асоціативності. Порядок можно змінювати за допомогою
    • круглих дужок.
    • Приклад: x<=5.7*(x-y)/(cos(y)-sin(x))


Арифметичні операції

  • Арифметичні операції



  • Приклад

  • int b=7, g=3

  • b/g => 2 g/b =>0 b%g =>1 -b => -7

  • Щоб частка була дійсною, дйісним має бути хоча б один операнд 7.0/3 (double)b/3

  • Операція явного перетворення типу (тип)

  • - унарна арифметична операція зміни знака

  • Порозрядні операції (побітові) виконуються

  • тільки над операндами цілих типів і дають змогу

  • працювати з окремими бітами даних (можливості

  • асемблера)



Операції присвоювання

  • Група з 15 операцій: унарних (++ --) та бінарних.

  • Змінюють значення свого операнда: у разі бінарних операцій лівий операнд набуває значення виразу , записаного справа; у разі унарних операцій змінюється початкове значення операнда. Операнд, якому присвоюється значення повинен бути L-value (змінною або розадресованим вказівником). Для бінарних операцій присвоєння виконується справа наліво.

  • Унарні операції присвоювання

  • ++ інкремент (збільшує значення на 1)

  • -- декремент ( зменшує на 1)

  • ++ К (префіксна форма) К++ (постфіксна форма)

  • Приклад: sum+=n (sum=sum+n); k+=1 (k++ або k=k+1)

  • В мові Сі допускаються присвоювання виду : a=(b=c=1)+1;

  • Приклад:     int data1, data2, data3;     data1=data2=data3=68;



Бінарні операції присвоювання

  • Бінарні операції присвоювання



Операції порівняння

  • Операції порівняння



Логічні операції

  • Логічні операції



Операндами логічних операцій є логічні дані (найчастіше це вирази з операціями порівняння)

  • Операндами логічних операцій є логічні дані (найчастіше це вирази з операціями порівняння)

  • Приклад

  • !(x>a && x

  • замість порівняння x==0 записують !x

  • Логічні вирази не обов’язково повністю обчислюються: як тільки значення стає однозначним , обчислення припиняються.

  • k=ksum ( якщо вираз зліва хибний-дорівнює 0 –то правий операнд не обчислюється)

  • Лівий операнд логічних операцій завжди обчислюється першим.



Операція слідування (кома)

  • Операція слідування (кома)

  • Операція "кома" (,) називається операцією слідування, яка "зв'язує" два довільних вирази. Список виразів, розділених між собою комами, обчислюються зліва направо. Наприклад, фрагмент тексту a=4; b=a+5; можна записати так : a=4, b=b+5;

  • Приклад1:

  • int a[10],sum,i;

  • /* ... */

  • sum=a[0];

  • for (i=1;i<10;i++)

  • sum+=a[i];

  • Приклад 2:

  • int a[10],sum,i;

  • /* ... */

  • for (i=1,sum=a[0];i<10;sum+=a[i],i++) ;



Умовна операція ?:

  • Умовна операція ?:

  • Синтаксис: умова ? вираз_1 : вираз_2

  • Спочатку обчислюється вираз умови. Якщо цей вираз має ненульове значення, то обчислюється вираз_1. Результатом операції ?: в даному випадку буде значення виразу_1. Якщо вираз умови рівний нулю, то обчислюється вираз_2 і його значення буде результатом операції. В будь-якому випадку обчислюється тільки один із виразів (вираз_1 або вираз_2).

  • Наприклад, дану операцію зручно використати для знаходження найбільшого з двох чисел x і y: max=(x>y)?x:y;

  • Можна замінити умовний оператор

  • Приклад:

  • Z=(0.1-sin(x))?(x*sin(x)):(x*cos(x));

  • Якщо 0.1-sin(x)=0, то z=x*sin(x). Инакше - z=x*cos(x).



Операція sizeof()

  • Операція sizeof()

  • Дана операція обчислює розмір пам'яті, необхідний для розміщення в ній виразів або змінних вказаних типів.

  •      Операція має дві форми :

      • ім'я_типу А;     sizeof А;
      • sizeof (ім'я_типу);
  • Операцію sizeof() можна застосовувати до констант, типів або змінних, у результаті чого буде отримано число байт, що відводяться під операнд. Приміром, sizеof(int) поверне число байт для розміщення змінної типу int.



Узгодження типів у виразах

  • Узгодження типів у виразах

  • Якщо операнди бінарної операції мають різні арифметичні типи,

  • то компілятор перевіряє сумісність і встановлює спільний тип.

  • 1) Перетворення типів в операціях присвоєння: тип виразу справа від знака = до типу змінної (чи L-операнда). Якщо тип змінної старший, то тип виразу підтягується до типу змінної. Якщо тип змінної молодший, то значення перетворюється

  • (обтинається) до типу змінної (можливі помилки !)

  • Приклад: int m; m=2.1; /* m=2 */ m=2.9; /* m=2*/

  • вираз з використанням явного перетворення типу, що повертає

  • цілочисельне значення, найближче до дійсного Х (з діапазону

  • доп. значень типу int ) x>0 ?(int)(x+0/5):(int)(x-0/5)

  • 2) Арифметичні перетворення типів: встановлено таку ієрархію типів



Приклад



Стандартні математичні функції

  • Підключення бібліотеки директивою препроцесора

  • # include

  • Всі функції мають тип double. Аргумент теж типу double.

  • Приклад

  • Y=sin(0.5*x)+sqrt(0.3e-2)*pow(2.0,x-1);

  • Можливо створювати макроси з параметрами (не плутати з функціями!), що оброблюються препроцесором.

  • Приклад

  • #define ABS(x) ((x)<0 ? -(x) :(x)) /* абсолютне значення*/

  • Основні математичні функції





Схожі:

Вирази та операції iconТема Логічні вирази та логічні операції 10-в 23. 11. 2012

Вирази та операції iconРегулярні вирази Регулярні вирази
Правила записуються у вигляді послідовності звичайних символів і метасимволів, яка потім використовується як зразок в операціях заміни...
Вирази та операції iconЛекція 9 Огляд курсу
Операції обробки зображення. Унарні операції. Лінійні та нелінійні фільтри. Морфологічні операції. Сегментація
Вирази та операції iconЛекція 1 Огляд медичних зображень
Операції обробки зображення. Унарні операції. Лінійні та нелінійні фільтри. Морфологічні операції. Сегментація
Вирази та операції iconЧислові вирази Числові вирази
Алгебра як наука складалася завдяки зусиллям багатьох людей протягом багатьох років. Алгебраїчні знаки, умовні позначення та правила...
Вирази та операції iconІнформатика 9 клас Операції з фрагментами тексту. Робота з кількома документами. Операції з текстовими фрагментами

Вирази та операції iconВирази зі змінними Вирази зі змінними

Вирази та операції iconОбчисли вирази. 51 : 3 95 : 5

Вирази та операції iconПроектні процедури і операції. Проектні процедури і операції
Трудомісткість виконання процедур і операцій визначається необхідними витратами ресурсів
Вирази та операції iconРозроджуючі операції (кесарів розтин, акушерські щипци, вакуум-екстракція, плодоруйнуючі операції) (лекція)
Розроджуючі операції (кесарів розтин, акушерські щипци, вакуум-екстракція, плодоруйнуючі операції)

Додайте кнопку на своєму сайті:
dok.znaimo.com.ua


База даних захищена авторським правом ©dok.znaimo.com.ua 2013
звернутися до адміністрації
dok.znaimo.com.ua
Головна сторінка