Все разделы
Выбрать школу

Школа. Увлечения. Большое будущее.

PROSCHOOLS · ОБРАЗОВАНИЕ РЯДОМ

Ваш город

Выберите город, чтобы находить образование и возможности рядом.

Как учитываем городКаталог и кнопки «Выбрать школу» покажут школы выбранного города.Онлайн-курсы, учебник, ГДЗ и задания к экзаменам доступны по всей России.

Популярные города

Будет выбран: Вся Россия

Учебные материалы останутся прежними.

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

По всему сайтуШколы выбранного города — выше в результатах

С чего начнём?

↑ ↓ — выбрать результат · Enter — открыть · Esc — закрыть

Типы данных и диапазон значений переменных

💻 Информатика · 9 класс

Почему у каждой переменной есть тип, какие бывают типы и что произойдёт при переполнении.

Электронная таблица LibreOffice Calc
Электронная таблица LibreOffice CalcOwn work (conteúdo), The Document Foundation and Canonical (window and controls) · Wikimedia Commons · CC0

Зачем нужен тип данных

Тип данных — это характеристика переменной, которая определяет, какие значения она может хранить, сколько памяти занимает и какие действия с ней допустимы. Компьютер хранит всё в виде двоичных кодов, и именно тип подсказывает, как эти коды истолковать: как целое число, как дробное, как символ или как логическое значение. Один и тот же набор нулей и единиц может означать совершенно разные вещи в зависимости от типа.

Тип переменной обычно указывают при её объявлении. Это помогает компьютеру выделить нужное количество памяти и заранее проверить, что с переменной выполняются осмысленные действия — например, нельзя умножать текст на число.

Основные типы данных

ТипЧто хранитПример значения
Целый (integer)Целые числа без дробной части-7, 0, 250
Вещественный (real)Дробные числа3.14, -0.5
Символьный (char)Один символбуква, цифра, знак
Строковый (string)Текст из символовслово или фраза
Логический (boolean)Истина или ложь«да» или «нет»

Диапазон значений

Целые типы занимают фиксированное число байтов, поэтому могут хранить числа только в определённых границах. Например, двухбайтовый целый тип хранит числа примерно от -32768 до 32767. Если результат вычисления выходит за эти рамки, происходит переполнение: значение «портится» и становится неверным. Число различных значений, которые помещаются в память, зависит от числа байтов.

n байт памяти -> 2^(8*n) различных значений 1 байт -> 256 значений (например, от 0 до 255) 2 байта -> 65536 значений 4 байта -> более 4 миллиардов значений

Разбор ситуации с переполнением

Пусть переменная целого типа хранит число 30000, и мы прибавляем к ней 10000. Если максимум типа — 32767, то результат 40000 просто не помещается. Вместо ожидаемого ответа получится неверное число, нередко даже отрицательное. Чтобы избежать таких сюрпризов, тип переменной выбирают заранее, исходя из того, какие значения она будет принимать в течение всей программы.

Частые ошибки. Хранить большие счётчики или денежные суммы в маленьком целом типе и получить переполнение. Сравнивать вещественные числа на точное равенство — это ненадёжно, потому что дроби хранятся приближённо. Записывать дробное значение в целую переменную и терять дробную часть.

Кратко о главном

  • Тип данных задаёт множество значений, объём памяти и допустимые операции.
  • Основные типы: целый, вещественный, символьный, строковый и логический.
  • Целые типы имеют ограниченный диапазон; выход за него называется переполнением.
  • Тип переменной выбирают заранее, исходя из диапазона нужных значений.