Переменные величины. Оператор присваивания.Учитель информатикиМОУ Юрцовская СОШ Егорьевский районСафонова Ольга Викторовна
Понятие переменной величины известно из школьной математики. Пусть несколько лет назад ваш рост равнялся 130 см. Обозначим это так: r=130. Теперь он равен 140 см, т.е. r=140. Получается, что величина r изменилась. Поэтому она называется переменной величиной. Числа 130 и 140 называются значениями переменной величины r.
Что же мы можем делать с переменными величинами, программируя на Паскале?Прежде всего мы можем задавать компьютеру значение той или иной переменной величины. Это можно сделать при помощи нового оператора, который называется оператором присваивания.
Если мы хотим сказать, что а имеет значение 6, то должны записать:а:=6. Вместо значка = употребляется значок := . Он называется знаком присваивания, а сама запись а:=6 называется оператором присваивания. Говорят, что величине а присваивается значение 6. С момента выполнения оператора а:=6 компьютер будет помнить, что а равно шести.
Справа от значка := в операторе присваивания можно писать не только числа, но и переменные величины и выражения. После выполнения следующего фрагмента программы: … a:=2*3+4; b:=a; y:=a+b+1 …компьютер будет знать, что а равно 10, b равно 10, y равно 21.
Фрагменты программНеобходимо помнить, что компьютер выполняет оператор присваивания «в уме» , то есть результат его выполнения не отображается на экране. Если мы хотим видеть результат выполнения оператора присваивания, используйте WriteLn.
Фрагменты программv := - 2 +10; h := 10*v; s := v+h; WriteLn(s)
Фрагменты программv := - 2 +10; h := 10*v; s := v+h; WriteLn(v+1000, ‘ ‘ ,10*h, ‘ ‘ ,s)
Нужно иметь в виду, что слева от знака := может стоять только переменная величина, но не число и не выражение. Можно писать с:=34 , но нельзя писать 34:=с Можно писать z := f – v+990 , но нельзя писать f – v+990 := z.Оператор присваивания устроен так, что сначала он смотрит или вычисляет, какое значение имеет правая часть, а затем присваивает это значение переменной , стоящей в левой части. Нет смысла присваивать значение числу или выражению.
Обратите внимание.Когда ученик видит выражение (например, d+2d ), он не обязательно его вычисляет. Он может его преобразовать или упростить (получив 3d ). Компьютер же, видя выражение, сначала его, может быть, и упростит, но затем обязательно вычислит. А для этого он должен знать численные значения входящих в него величин (в данном случае это величина d ).
Итак, вычисляя правую часть оператора присваивания (например, y:=a+b+1 ), компьютер должен обязательно заранее знать, чему равны переменные, из которых эта правая часть состоит (в нашем случае это a и b). Ответственность за это знание лежит полностью на программисте.Пусть забывчивый программист записал такой фрагмент: . . . а:=10; y:=a+b+1 . . ., нигде в программе не придав b никакого значения.
При вычислении выражения a+b+1 компьютер не будет знать, чему равно b . В такой ситуации разные языки программирования поступают по-разному. Некоторые просто отказываются вычислять выражения, другие подставляют вместо b нуль, Паскаль же иногда может поступить довольно вредно: вместо b он подставит случайное значение и получит, например, результат равным -8904.
Оператор присваивания состоит из знака присваивания := , слева от которого пишется переменная, а справа – число, переменная или выражение.При выполнении оператора присваивания компьютер «в уме» (т.е. ничего не показывая на мониторе) вычисляет правую часть и присваивает вычисленное значение переменной, стоящей в левой части.
Какое значение будет присвоено переменной t после выполнения фрагмента k:=1+2; s:=2*k; t:=6 – s ?
Лукин Н.С. Турбо-Паскаль 7.0 . Самоучитель для начинающих – 2-е изд., испр. И допол. – М.: «Диалог-МИФИ», 2005. – 400 с.