Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Turbo-Pascal.7.0.doc
Скачиваний:
19
Добавлен:
08.11.2018
Размер:
3.66 Mб
Скачать
        1. Оператор присваивания меняет значение переменной величины

Пока я не рассматривал программы, в которых переменные меняют свою величину. Теперь настало время такую программу рассмотреть:

VAR k : Integer; BEGIN k:=10; WriteLn (k); k:=25; WriteLn (k); k:=4; WriteLn (k) END.

Запишем схематически процесс изменения информации в ячейке k:

ПОРЯДОК ИСПОЛНЕНИЯ ОПЕРАТОРОВ

ЧТО НАХОДИТСЯ В ЯЧЕЙКЕ ПАМЯТИ k

ЧТО ВИДИМ НА ЭКРАНЕ

k:=10

10

WriteLn (k)

10

10

k:=25

25

WriteLn (k)

25

25

k:=4

4

WriteLn (k)

4

4

Как видите, в процессе работы программы содержимое ячейки k меняется. Так, при выполнении оператора k:=25 там вместо значения 10 появляется 25. А куда же девается десятка? Она стирается, то есть компьютер забывает ее безвозвратно. Здесь действует общий принцип работы всех компьютеров:

Если в какое-нибудь место памяти или диска записывается новая информация, то старая информация, записанная там раньше, автоматически стирается, даже если она кому-то и нужна.

Раз теперь вместо 10 в ячейке k находится 25, то оператор WriteLn (k) печатает уже 25. Следующий оператор k:=4 запишет на место 25 четверку, а WriteLn (k) ее напечатает.

А что напечатает следующая программа?

VAR f : Integer; BEGIN f:=30; f:=f+4; WriteLn (f) END.

Оператор f:=30 запишет в ячейку f число 30. А что сделает странный оператор f:=f+4? По определению оператора присваивания он сначала вычислит правую часть f+4 , подставив туда вместо f его значение, взятое из ячейки, и получит 34. Затем число 34 будет записано в ячейку, отведенную под переменную, обозначенную в левой части, то есть опять в ячейку f. При этом старое значение 30 будет стерто.

Таким образом, оператор f:=f+4 просто увеличивает число в ячейке f на четверку или, другими словами, увеличивает f на 4.

Задания 8-10:

Определите без компьютера, что будет напечатано при выполнении следующих фрагментов программ:

  1. a:=100; a:=10*a+1; WriteLn (a)

  2. a:=100; a:=-a; WriteLn (a)

  3. a:=10; b:=25; a:=b-a; b:=a-b; WriteLn (a,' ',b)

      1. Имена переменных

Мы привыкли переменные величины обозначать буквами (a, s, d ... ). Большинство языков программирования, в том числе и Паскаль, позволяет обозначать переменные не только буквами, но и целыми словами. Вот два равносильных фрагмента программы:

a:=3;

Summa:=3;

b:=4-a;

ROBBY:=4-Summa;

WriteLn (a,b+50)

WriteLn (Summa,ROBBY+50)

В том и другом случае будут напечатаны числа 3 и 51. Очевидно, компьютеру все равно, как мы обозначаем переменные величины, в смысл имен он не вдумывается и не удивляется, что переменная Summa никакой суммой не является, а просто числом 3.

Будем называть обозначение переменной именем или идентификатором этой переменной.

Правило:

Именем переменной в Паскале может служить любая последовательность цифр, латинских букв и знака подчеркивания, не начинающаяся с цифры.

Примеры правильной записи имен:

a

x

velichina

zzz

polnaja_summa

tri_plus_dva

s25

k1

_k1

___

a1b88qq

oshibka

Примеры неправильной записи имен:

ж - буква не латинского алфавита polnaja summa - содержится символ (пробел), не являющийся буквой, цифрой или знаком подчеркивания 2as - начинается с цифры

Domby&Son - содержится символ & , не являющийся буквой, цифрой или знаком подчеркивания

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]