"Информатика (изд. "БИНОМ. Лаборатория знаний")", Угринович Н.Д.
Переменная — это место в памяти компьютера, где программа хранит данные и обращается к ним по имени. У каждой переменной есть имя, тип и текущее значение: имя помогает найти данные, тип определяет, что можно хранить и какие операции выполнять, а значение используется в вычислениях. Во время работы программы значение может измениться: новое присваивание обычно заменяет прежнее.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Переменная — именованная область памяти, в которой во время выполнения программы хранится значение. Проще говоря, это место, куда компьютер записывает данные, чтобы программа могла использовать их позже. Переменные нужны, когда программе требуется сохранять результаты вычислений, введённые данные или промежуточные сведения.
Тип переменной — характеристика, определяющая, какие значения можно хранить в переменной и какие операции с ними допустимы. Тип помогает программе правильно представить данные и определить, как с ними работать. Например, целые числа можно складывать как числа, а с логическими значениями выполняют проверки истинности.
Имя переменной — идентификатор, по которому программа обращается к переменной; оно должно соответствовать правилам языка программирования. Это похоже на подпись, позволяющую отличить одну область памяти от другой. Понятные и правильно записанные имена помогают читать программу и находить нужные данные.
Значение переменной — данные, которые хранятся в переменной в данный момент и могут изменяться при выполнении программы. Например, в переменной счёта сначала может быть 0, а после действий пользователя — другое число. Значение важно, потому что именно его программа использует в вычислениях и командах.
Компьютер выделяет для переменной место в памяти, чтобы программа могла сохранить данные и позднее обратиться к ним по имени. Без такого места программе пришлось бы каждый раз заново получать нужные данные, а результаты промежуточных действий было бы негде удерживать. Имя связывает команду программы с определённой областью памяти, поэтому при обращении компьютер понимает, где искать нужное значение.
Тип выбирают с учётом характера данных: целые числа, вещественные числа, символы и логические значения требуют разных способов представления и обработки. Например, чтобы хранить температуру с десятыми долями, нужно сохранить не только целую часть, но и дробную. Если тип не подходит, часть данных может быть недоступна или операции дадут не тот смысл, который нужен программе.
Имя позволяет различать переменные и делает программу понятнее; при его выборе учитывают допустимые символы и запреты языка, например запрет пробелов. Компьютер должен однозначно распознать имя, иначе он не сможет связать его с нужным местом памяти. Поэтому имя вроде temperature удобно читать, а запись с пробелом обычно нарушает правила языка.
Значение присваивают переменной, после чего его можно использовать в вычислениях; новое присваивание заменяет прежнее значение. Это позволяет одной переменной хранить текущий результат, например очередную сумму или счётчик повторений. Если программе нужны оба результата — старый и новый, — для них обычно используют разные переменные.
Имя, тип и значение описывают разные стороны переменной: имя указывает, к чему обратиться, тип задаёт допустимые данные, а значение содержит конкретные данные. Эти характеристики дополняют друг друга: одного имени недостаточно, чтобы понять, какие данные оно хранит, а тип не сообщает само конкретное число. Разделяя эти понятия, легче читать команды и находить ошибки в программе.
| Тип переменной | Какие значения хранит | Пример значения |
|---|---|---|
| Целый | Целые числа | −7 |
| Вещественный | Числа с дробной частью | 3,14 |
| Символьный | Один символ | А |
| Логический | Истина или ложь | истина |
Чтобы выбрать тип, найдите в таблице строку, которая соответствует данным задачи. Затем проверьте, не нужно ли хранить дробную часть или особое значение вроде «истина» и «ложь». Примеры показывают вид данных, но в конкретном языке программирования запись может отличаться.
Условие: переменная age хранит число полных лет, а temperature — температуру с десятыми долями градуса. Нужно предложить подходящий тип для каждой переменной. Сначала выясним, какие именно значения возможны, а затем сопоставим их с типами.
Ответ: для age подходит целый тип, для temperature — вещественный. Такой выбор сохраняет нужную точность и соответствует смыслу данных.
Условие: переменной count присвоили значение 12, а затем значение 15. Требуется определить, что хранится в ней после второго присваивания. Здесь важно проследить порядок команд, а не складывать числа.
Ответ: после второго присваивания в count хранится 15. Число 12 не сохраняется в этой переменной вместе с новым значением.
Условие: переменной price присвоено 8,5, затем вычисляется price + 2. Нужно объяснить выбор типа и найти результат. Сначала посмотрим на форму исходного числа, а потом выполним сложение.
Ответ: для price выбирают вещественный тип, а результат выражения равен 10,5. Результат сохраняет дробную часть, потому что вычисление выполняется с вещественным значением.
Ошибка: считать имя переменной её значением. Это происходит потому, что в записи программы имя часто стоит там, где человек ожидает увидеть данные. Проверьте себя: имя — это обозначение для обращения, а конкретное число или текст хранится отдельно и может измениться.
Ошибка: выбирать тип, не учитывая возможные значения, например помещать дробное число в целую переменную. Так поступают, если смотрят только на пример, а не на все данные, которые может получить программа. Проверьте, нужна ли дробная часть: если да, целый тип не подходит.
Ошибка: использовать имя, нарушающее правила языка, например содержащее пробел или совпадающее с зарезервированным словом. Привычное человеку выражение не обязательно является допустимым идентификатором. Проверьте имя по правилам языка и попробуйте заменить его коротким словом без пробелов, например total.
Ошибка: считать, что после присваивания старое значение сохраняется вместе с новым. Путаница возникает, если представить переменную как список всех полученных чисел, а не как одно место для текущего значения. Проверьте последовательность команд: после очередного присваивания в переменной обычно остаётся только последнее записанное значение.
Чтобы понимать работу переменных, нужно знать, что программа обрабатывает данные и выполняет команды в заданном порядке. Тогда можно проследить, как значение появляется и меняется при выполнении команд. Переменные используются в арифметических выражениях, алгоритмах, а также в программах с вводом и выводом данных.
Знание типов помогает выбирать допустимые операции и правильно строить условия. Например, проверка логического значения отличается от вычисления суммы чисел. Поэтому понимание типов необходимо при изучении операций, условий и обработки данных разных видов.
Чем переменная отличается от её значения?
Переменная — это область памяти, к которой программа обращается по имени, а значение — данные, записанные в этой области. Значение может меняться, хотя имя переменной остаётся прежним.
Зачем переменной указывать тип?
Тип сообщает программе, какие данные можно хранить в переменной и какие действия с ними допустимы. Например, дробное число следует хранить в вещественной переменной.
Может ли значение переменной измениться во время работы программы?
Да. Программа может присвоить переменной новое значение, и обычно оно заменит прежнее. Поэтому одна переменная может хранить разные данные на разных этапах работы.
Почему нельзя использовать любое слово в качестве имени переменной?
Язык программирования устанавливает правила для имён: например, запрещает пробелы или использование некоторых зарезервированных слов. Если нарушить эти правила, программа может не понять имя и сообщить об ошибке.
Как выбрать тип переменной для конкретных данных?
Сначала определите, какие значения будет хранить переменная и нужна ли точность до дробной части. Для целого количества подходят целые числа, для измерений с дробью — вещественные, для одного знака — символьные, для ответа «да» или «нет» — логические.
1.3. Переменные: тип, имя, значение