Опис змінних та констант


Опис змінних

Загальне правило опису:

· без початкової ініцініалізації

<тип змінної> <ідентифікатор змінної>;

· з початковою ініціалізацією

<тип змінної> <ідентифікатор змінної> = <значення>;

Приклади:

int a; // Без початкової ініціалізації.

int b=40; // Змінна b ініціалізовується значенням 40.

double s=3.67; // Змінна s ініціалізовується значенням 3.67.

Опис констант

Загальне правило опису:

const <тип константи> <ідентифікатор констати> = <значення>;

Приклади:

const int a = 10; // константа цілого типу

const float b = 2.5; // константа дійсного типу

Перетворення типів

В мові розрізняють два види перетворень (приведень) змінних – явне та неявне.

Неявне перетвореннятипів використовується в тому випадку, коли дане перетворення є «природним». Тобто, наприклад, перетворюється величина типу float в величину типу double.

Приклад:

float f = 1.23;

double d = f; // Неявне перетворення

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

Явне перетвореннятипів вимагає явного задання цільового типу, до якого здійснюється перетворення. Цільовий тип вказується в дужках перед значенням тип якого перетворюється.

Загальне правило явного перетворення:

<змінна> = (<цільовий тип>) <вираз>;

Приклад:

double d = 2.9;

float f = (float)d; // Явне перетворення

Для цільового типу повинно існувати неявне перетворення до типу змінної, в якій буде збережено результат.

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

Виразом називають послідовність операцій, операндів і розділових знаків, що задають деякі обчислення. В залежності від значення, яке одержується в результаті цих обчислень, вирази поділяють на арифметичні та логічні.

Арифметичні вирази

Арифметичним виразом називають вираз, в результаті обчислення якого одержуємо числове значення.

Бінарні та унарні операції

Часто у арифметичних виразах використовуються бінарні арифметичні операції.

Операція Позначення Приклад
+ додавання z=x+y
віднімання z=x-y
* множення z=x*y
/ ділення z=x/y
% остача від ділення z=x%y

Окрім бінарних операцій в арифметичному виразі можуть бути присутні також унарні операції «+», «–» та операції інкременту «++» і декременту
«– –». Унарний мінус використовується для зміни знаку. Операції інкременту і декрменту використовують для збільшення та зменшення значення змінної на одиницю. Ці операції можуть вживатися у префіксній та постфіксній формі.

Операція Аналог
i++ або ++i i=i+1
i-- або --i i=i-1

Якщо унарну операцію вжито у префіксній формі у виразі, то вона виконується до використання значення змінної у виразі. Якщо ж унарну операцію вжито у постфіксній формі, то операція виконується після використання значення змінної у виразі.

Операція Аналог з бінарними операціями
int i = 5;   int j = ++i; // j=6 i=6 int i = 5; i=i+1; int j = i; // j=6 i=6
int i = 5;   int j = i++; // j=5 i=6 int i = 5; int j = i; i=i+1; // j=5 i=6
int i = 5;   int j = --i; // j=4 i=4 int i = 5; i=i-1; int j = i; // j=4 i=4
int i = 5;   int j = i--; // j=5 i=4 int i = 5; int j = i; i=i-1; // j=5 i=4

Побітові операції

У мові C# є можливість здійснювати побітові операції над розрядами аргументів.

Операція Позначення Приклад
& побітове «і» int x=10; //x=1010(2) int y=7; //y=0111(2) z=x&y // z=2=0010(2)
| побітове «або» int x=10; //x=1010(2) int y=7; //y=0111(2) z=x|y //z=15=1111(2)
^ Побітове «виключаюче або» int x=10; //x=1010(2) int y=7; //y=0111(2) z=x^y //z=13=1101(2)

Операції зсуву

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

При зсуві вліво (<<) вільні біти обнуляються. При зсуві вправо (>>) вільні біти заповнюються нулями, якщо перший операнд беззнакового типу (логічний зсув), і знаковим розрядом − в протилежному випадку (арифметичний зсув).

Операція Позначення Приклад
>> зсув розрядів вправо (змінна) =(змінна)>>(кільк. розрядів) int i=4;//i=100(2) i=i>>1; //i=2=10(2)
<< зсув розрядів вліво (змінна) =(змінна)<<(кільк. розрядів) int i=4;//i=100(2) i=i<<2; //i=16=10000(2)

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

Якщо при виконанні бінарної операції результат зберігається у змінній, що є першим аргументом, то можна використати так звані операції присвоювання.

Операція Приклад Аналог з бінарними операціями
+= int i = 5; i += 3; // i=8 int i = 5; i=i+3; // i=8
-= int i = 5; i -= 3; // i=2 int i = 5; i=i-3; // i=2
*= int i = 5; i *= 3; // i=15 int i = 5; i=i*3; // i=15
/= int i = 6; i /= 3; // i=2 int i = 6; i=i/3; // i=2
>>= int i = 5; i >>= 1; // i=2 int i = 5; i=i>>1; // i=2
<<= int i = 5; i <<= 1; // i=10 int i = 5; i=i<<1; // i=10
&= int i = 5; int j = 7; i &= j; // i=5 int i = 5; int j = 7; i=i&j; // i=5
^= int i = 5; int j = 7; i ^= 1; // i=2 int i = 5; int j = 7; i=i^j; // i=2
|= int i = 5; int j = 7; i |= 1; // i=7 int i = 5; int j = 7; i=i|j; // i=7

Математичні функції

Арифметичні вирази можуть містити різні математичні функції. У мові C# математичні функції реалізовані у класі Math.

Назва Опис Результат Пояснення
Тригонометричні функції
Sin Синус double Math.Sin(double x)
Cos Косинус double Math.Cos(double x)
Tan Тангенс double Math.Tan(double x)
Обернені тригонометричні функції
ASin Арксинус double Math.ASin(double x)
ACos Арккосинус double Math.ACos(double x)
ATan Арктангенс double Math.ATan(double x)
ATan2 Арктангенс double Math.ATan2(double x, double y) – кут, тангенс якого є результатом ділення y на x
Гіперболічні функції
Tanh Тангенс гіперболічний double Math.Tanh(double x)
Sinh Синус гіперболічний double Math.Sinh(double x)
Cosh Косинус гіперболічний double Math.Cosh(double x)
Експонента і логарифмічні функції
Exp Експонента double Math.Exp(x)
Log Логарифм натуральний double Math.Log(x)
Log10 Логарифм десятковий double Math.Log10(x)
Модуль(абсолютна величина), корінь квадратний, знак
Abs Модуль Залежить від типу аргументу Math.Abs(x)
Sqrt Квадратний корінь double Math.Sqrt(x)
Sign Знак числа int Math.Sign(x)
Заокруглення
Ceiling Заокруглення до більшого цілого double Math.Ceiling(double x)
Floor Заокруглення до меншого цілого double Math.Floor(double x)
Round Заокруглення Залежить від типу аргументу Math.Round(x)
Мінімум, максимум
Min Мінімум двох чисел Залежить від типу аргументу Math.Min(x,y)
Max Максимум двох чисел Залежить від типу аргументу Math.Max(x,y)
Степінь, остача
Pow Піднесення до степеня double Math.Pow(x,y)
IEEERemainder Остача від ділення double Math.IEEERemainder(double x, double y)
Добуток двох цілих величин
BigMul Добуток long Math.BigMul(int x,int y)
Ділення і остача від ділення
DivRem Ділення і остача Залежить від типу аргументу Math.DivRem(x,y, rem)
Константи
E База натурального логарифма double Math.E
PI Значення числа π double Math.PI

Логічні вирази

Логічним виразом або умовою називається такий вираз, внаслідок обчислення якого одержується логічне значення типу bool.

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

Логічний вираз може містити операції порівняння.

Операція Позначення Приклад
== рівність x==y
> більше x>y
< менше x<y
>= більше або рівно x>=y
<= менше або рівно x<=y
!= не рівно x!=y

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

У логічному виразі можуть також використовуватися логічні операції.

x y x&&y (логічне «і») x || y (логічне «або») !x (заперечення)
false false false false true
false true false true true
true false false true false
true true true true false

Пріоритет операцій

При обчисленні значення арифметичних та логічних виразів оператори виконуються у певному порядку. Нижче наведено порядок виконання усіх операторів у мові C#.

1. (), [], ., (постфікс)++, (постфікс)--, new, sizeof, typeof , unchecked

2. !, ~, (ім'я типу), +(унарний), -(унарний), ++(префікс), --(префікс)

3. *, /, %

4. +, -

5. <<, >>

6. <, >, <=, >=, is

7. ==, !=

8. &

9. ^

10. |

11. &&

12. ||

13. ?:

14. =, +=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>=

 



Дата добавления: 2022-02-05; просмотров: 313;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

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

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.012 сек.