Как Петя Бейсиков Тоню Соображалкину программировать учил
- Автор: Бруно Мартузан
- Жанр: Околокомпьютерная литература / Детская образовательная литература / Basic, Visual Basic, VB Script, VBA и т.п.
- Дата выхода: 1987
Читать книгу "Как Петя Бейсиков Тоню Соображалкину программировать учил"
ВСЕ О ПЕРЕМЕННЫХ
ПЕРЕМЕННАЯ
Наверно, следовало бы сказать, что такое переменная, но я затрудняюсь это сделать. Ну… просто это нечто, имеющее значение и участвующее в каких-нибудь операциях или действиях, в которых это значение может измениться, а может и не измениться. И еще переменная имеет обозначение, или, как часто говорят, имя. Например, в последнем примере переменная имеет обозначение— букву «А», а значение — число 12.
— Этого я не понимаю. У тебя получается нечто такое — переменная А имеет обозначение «А». Это же какая-то бессмыслица.
— А это ты понимаешь: «ученица Соображалкина имеет фамилию Соображалкина»?
— Это-то я понимаю.
— Ну, вот. Понятно ведь, что ученица и ее фамилия — вещи совершенно разные. И совершенно так же, как ученица имеет фамилию, переменная имеет обозначение, притом вместо обозначения переменной часто говорят — имя переменной. Различие между ученицей и переменной, конечно, имеется — хотя бы в том, что Соображалкина существует независимо от того, как ее называют и называют ли вообще, а переменная в памяти машины начинает существовать только в тот момент, когда ее как-то называют, другими словами, обозначают, когда она в первый раз появляется слева от знака равенства в операторе присвоения. Вообрази, что интерпретатор для каждой определяемой переменной в памяти отводит место, где хранить ее значение, или, еще проще, что каждая переменная — это ящичек, на котором написано обозначение, а внутри хранится значение. И когда значение переменной присваивается в первый раз, то такой ящичек с надписью и со значением возникает как будто по мановению волшебной палочки.
Ничего страшного, правда, не случается, если программист ошибется и в каком-либо арифметическом выражении использует переменную, которой еще не присваивалось значение. Интерпретатор принимает, что оно равно нулю.