Урок 2. Константы и переменные .
Типы данных.
Учитель: Смирнова Гузэль Хадиевна
Гимназия №122, г. Казань
Урок 2.
Сегодня, пожалуй, самый теоретически насыщенный урок. Но без основных понятий и правил обойтись невозможно. Вашу программу будет выполнять машина, а она все делает буквально. Поэтому правила написания программы очень жестки, но их немного. Одно утешает, что правила русского языка намного сложнее.
Для начала рассмотрим задачу:
Напишите программу вычисления суммы 3 чисел.
Начало
Блок – схема
программы
Вывод
Введите 3 числа
ввод x,y,k
Z:=x+y+k;
Вывод
Z
конец
Урок 2.
Program SUMMA;
Var X,Y,K,Z: integer;
Begin
Writeln (‘Введите три числа ’); Readln(X,Y,K);
Z:=X+Y+K;
Writeln(Z);
readln
End.
Вызвать программу
На этом примере видны основные особенности записи программы:
1)всякая программа начинается с заголовка – слова PROGRAM и следующего за ним названия программы; (в последних версиях Паскаля это предложение писать не обязательно)
2)после заголовка располагается описательная часть программы;
3)между служебными словами BEGIN и END записывается алгоритм решения задачи;
4)команды (операторы) разделяются точкой с запятой ;
5)Русский текст заключается в апострофы ‘ … ‘ ;
6)перечисляемые объекты разделяются запятой.
Имена и зарезервированные слова.
Текст программы записывается при помощи латинских букв, цифр и знаков . Буквы допускаются прописные и строчные, причем для компилятора записи VAR , vAR , VaR идентичны.
Особую роль в тексте программы играют имена и зарезервированные слова. Имена применяются для обозначения программы и ее объектов. Имя может состоять из любого количества букв или цифр, но должно начинаться с буквы. В имя можно включать знак подчеркивания (например Prim _1). В программе SUMMA пять имен: SUMMA , X , Y , K , Z . Программисты часто используют осмысленные имена в своих программах . Это всегда полезно, а в сложных программах совершенно необходимо.
Имена и зарезервированные слова.
Зарезервированные слова применяют для обозначения операторов (команд) и других элементов языка Паскаль. Их нельзя использовать в качестве имен и во всех программах они имеют одинаковый смысл. Зарезервированными словами в нашем примере являются слова: PROGRAM ( программа), VAR ( переменные), BEGIN (начало), READ (читать), WRITELN (писать), END (конец).
Константы и переменные .
Данные , которыми оперирует программа, могут быть определены в ней как неизменные, либо как способные изменять свое значение в ходе выполнения программы. Первые называются константами, а вторые переменными. И переменные и константы размещаются в памяти компьютера (в так называемой «ячейке памяти»). В программе переменные должны быть описаны в предложении VAR (от слова VARIABLE -переменная), а константы – в предложении CONST . У всякой величины имеется три основных свойства: имя, значение, тип.
Тип INTEGER (целый).
И в жизни и в программировании очень полезно использовать понятие типа. Предположим, вам сказали, что вы должны приобрести Джой. Больше ничего не известно – сколько у него ног, предмет это или животное и т.д. в то же время очень многое можно сообщить, добавив лишь одно слово, определяющее тип объекта по имени Джой, например, Джой – собака, или Джой – человек, или Джой – компьютер.
Любая константа или переменная, использованная в программе, принадлежит к определенному типу. Тип задает множество допустимых значений переменных, внешний вид констант, возможные операции над значениями.
Тип INTEGER (целый).
Значения величины типа INTEGER в Паскале не может быть меньше –32768 или больше 32767.
Константы целого типа записываются в виде последовательности цифр со знаком или без него.
Переменные должны быть перечислены в описательной части программы в предложении
VAR имя _переменной: INTEGER ;
Над величинами целого типа допустимы арифметический операции: +(сложение), –(вычитание), *(умножение), DIV (деление нацело), MOD (нахождение остатка от целочисленного деления).
Все операции вырабатывают результат целого типа. Например,
15 DIV 4 = 3, 25 MOD 4 = 1.
Над целыми разрешено и обычное деление, оно обозначается косой чертой «/» и дает результат вещественного типа.
Тип REAL (вещественный).
Константы вещественного типа (числа с дробной частью) изображаются с десятичной точкой:
12.3, –1.5, –0.75 или в показательной форме: -0.45Е5, 6.7Е-10, 0.355Е6 (для получения числа в обычном виде надо перенести запятую на число разрядов указанных после Е вправо, если число положительное, влево, если отрицательное). Например, 6.7Е-10=0.00000000067.
Вещественные переменные требуют описания предложением
VAR имя: REAL ;
Над величинами вещественного типа допустимы арифметические операции: +(сложение), -(вычитание), *(умножение), /(деление).
Оператор присваивания
Оператор присваивания придает переменной конкретное значение, например:
Х:=2; Y :=5,
одновременно уничтожая старое. Редкая программа обходится без оператора присваивания.
Присваивать можно значение другой переменной или результат вычисления арифметического выражения: A := B ; A :+ B + C ; X := Y +2- Z .
Формат команды:
:= ;
Исполнение команды присваивания происходит в таком порядке: сначала вычисляется , затем полученное значение присваивается переменной.
Пример 1. Пусть переменная А имела значение 6. какое значение получит переменная А после выполнения команды: А:=2 * А - 1.
Оператор присваивания
Решение. Вычисление выражения 2 * А – 1 при А=6 даст число 11. Значит новое значение переменной А будет равно 11.
Пример 2.
Поменяйте между собой значения двух переменных А и В, воспользовавшись третьей переменной R для временного хранения значения .
Начало
Блок – схема
программы
Вывод
Введите 2 числа
ввод a,b
R:=a
A:=b
B:=r
Вывод
a,b
конец
Оператор присваивания
Решение .
Program prim2_2;
Var a, b, r: real;
begin
Writeln (‘Введите два числа ‘);
Readln(a,b);
R:=a;
A:=b;
B:=r;
Writeln(‘ a=’ , a:0:2, ‘ b=’ , b:0:2);
Readln
End .
Вызвать программу
Оператор присваивания
Задачи.
1)Определить конечное значение переменных X и Y в результате выполнения следующих алгоритмов:
а) Х:=2 б) Х:=1.5
Х:=Х * Х Х:=2 * Х + 1
Х:=Х * Х * Х Y := X /2
Х:=Х * Х * Х * Х Y := X + Y
X := X – Y
Оператор присваивания
2)Поменяйте между собой значения трех переменных X , Y и Z по схеме тройного квартирного обмена:
Х Y Z X( см. разбор задачи ниже)
3)Присвойте переменной N ее собственное значение, увеличенное в N раз.
4)Чему равно Х в результате выполнения программы
Х:=2;
Х:=Х+Х;
Х:=Х-Х
5)Указать значения величин a и b после выполнения следующих операторов присваивания:
а ) a:=5.8 б )a:=0
b:=-7.9 b:=-9.99
b:= а b:=a
a:=b a:=b
Начало
Блок – схема
программы
Вывод
Введите 3 числа
ввод x,y,z
R=x; X=z
Z=y; Y=r
Вывод
X,Y,Z
конец
Решение
Для начала проверьте правильность выполнения предыдущих заданий . И если не все получилось, не огорчайтесь, не ошибается тот, кто ничего не делает.
1) а) Х=16777216 б) Х=-2 Y =6
Program prim2_2;
Var X,Y,Z,R: real;
Begin
Writeln (‘Введите три числа ‘);
Readln(X,Y,Z);
R:=X;
X:=Z;
Z:=Y;
Y:=R;
Writeln(‘ X=’ , X, ‘ Y=’ , Y, ‘ Z=’, Z);
End.
3 ) N:=N*N
4 ) X=0
5 )a) b=5.8; a=5.8
б ) b=0; а =0
Вызвать программу