понеділок, 5 лютого 2018 р.

Типи змінних (C#)

Тип C#
Опис
Діапазон значень
Обсяг оперативної пам’яті, байт
sbyte
Ціле знакове число
-128...127
1
byte
Ціле беззнакове число
0...255
1
short
Ціле знакове число
-32768...32767
2
ushort
Ціле беззнакове число
0...65535
2
int
Ціле знакове число
-2147483648... 2147483647
4
uint
Ціле беззнакове число
0...4294967295
4
long
Ціле знакове число
-9223372036854775808...
9223372036854775807
8
ulong
Ціле беззнакове число
0...18446744073709551615
8
float
Дробове число
точність до 7 знаків
4
double
Дробове число
точність до 16 знаків
8
decimal
Дробове число
точність до 28 знаків
16
bool
Логічний (булевський) тип
false, true
1
char
Символ Unicode
один символ Unicode
2
string
Рядок символів Unicode
Надалі домовимося для числових величин використовувати такі типи: byte, int і long – якщо числа цілі; double – якщо дробові.

Як видно з таблиці, різні типи змінних займають різні обсяги оперативної пам’яті.

Розглянемо такий приклад:
в задачі відомо бали випускника з трьох предметів ЗНО. Програма повинна знаходити суму всіх балів. Як відомо, максимальний бал за ЗНО дорівнює 200, а, отже, для трьох змінних доцільно обрати тип byte. Проте, для змінної, яка позначає суму набраних балів тип byte не підходить — сума балів в задачі може бути рівною 600, а, отже, знадобиться тип int. Програма буде правильно працювати і у випадку, якщо для всіх чотирьох змінних обрати тип int, але буде вимагати більше оперативної пам’яті для свого виконання. Порівняємо перший і другий варіанти вибору типів змінних для даної задачі. Перший варіант: 3 змінних х 1 байт + 1 змінна * 4 байти = 7 байт; другий варіант: 4 змінних х 4 байт = 16 байт. Нераціональне використання типів змінних, особливо в великих проектах, призводить до невиправдано великих вимог програм до оперативної пам’яті комп’ютера.

Немає коментарів:

Дописати коментар

ТЕСТОВА ТЕХНОЛОГІЯ ПЕРЕВІРКИ ЗНАНЬ ЗАСОБАМИ ХМАРНИХ ТЕХНОЛОГІЙ

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