Автор работы: Пользователь скрыл имя, 28 Октября 2011 в 21:23, реферат
Имена (идентификаторы) называют элементы языка - константы, метки, типы, переменные, процедуры, функции, модули, объекты. Идентификатор в Турбо Паскале может включать в себя:
- буквы латинского алфавита,
- цифры
- символ подчеркивания.
Сипливец Юля, КМ-72
СИСТЕМЫ ПРОГРАММИРОВАНИЯ
Описание
подмножества языка
Паскаль
Имена (идентификаторы) называют элементы языка - константы, метки, типы, переменные, процедуры, функции, модули, объекты. Идентификатор в Турбо Паскале может включать в себя:
- буквы латинского алфавита,
- цифры
- символ подчеркивания.
Строчные
и прописные буквы не различаются
(например, NAME, Name и name будет означать
одно и то же). Цифра не может стоять
на первом месте в идентификаторе,
а символ подчеркивания может находиться
в любой позиции (например, name1 и name2item являются
допустимыми идентификаторами, а 5name -
нет; _name, name_, name_item - тоже допустимые названия).
Длина идентификатора может быть любой,
но значимыми являются только первые 63
символа. В качестве имен не допускается
использовать служебные слова.
2) Базовые типы данных
Для
обработки ЭВМ данные представляются
в виде величин и их совокупностей.
С понятием величины связаны такая
важная характеристика, как ее тип.
Тип определяет:
В табл.1 приведены типы данных Турбо Паскаль, объем памяти, необходимый для хранения одной переменной указанного типа, множество допустимых значений и применимые операции.
Пример декларации: х1: real
Пример представления констант:
45 – целое десятичное число
-21
– отрицательное десятичное целое
число
Пример декларации: х1: single;
Пример представления констант:
6; 1,43; 0; 8,467;
Пример декларации: х1: char;
Пример представления констант:
‘A’;
‘ ‘ – пробел, ‘; ’- точка с запятой
В табл.1 приведены операции Турбо Паскаля
Выражения,
заключенные в скобки, перед выполнением
вычисляются как отдельный
Операции с равным приоритетом производятся слева направо с возможным регулированием порядка выполнения скобками.
4) Типы данных пользователя и операции над ними
Пользовательский тип данных – массив.
Массив – структурированный тип данных, состоящий из фиксированного числа элементов, имеющих один и тот же тип.
Доступ к каждому элементу осуществляется путем индексирования элементов массива. Индексы представляют собой выражения любого скалярного типа, кроме вещественного. Тип индекса определяет границы изменения значений индекса.
Декларация:
Var <идентификатор,…> : array [тип индекса] of <тип компонент>;
Или
Type
<имя типа>= [тип индекса] of <тип компонент>;
Var
<идентификатор,…> : <имя
типа>;
Пример:
VAR
M1 : array[1..200] of integer; { М1, A1 - одномерные массивы целых и вещественных чисел }
A1 : array[100..200] of single;
ch1 : array['A'..'Z'] of char; { сh1, ch2 - одномерные массивы символов }
ch2
: array[0..255] of char;
Примеры присвоения значения:
M1[1] := 5;
A1[101] := 0.2;
ch1['B'] := 'C';
Если
в описании массива задан один
индекс, массив называется одномерным,
если n индексов – n-мерным.
5)
Операторы управления
ОПЕРАТОР ПРИСВАИВАНИЯ:
Оператор присваивания служит для присваивания значений переменным,
Декларация:<идентификатор>:=<
Пример: x:=1; a:=5. 02; b := 32*a+Sin(x); S:= 'Иван Иваныч';
СОСТАВНОЙ ОПЕРАТОР представляет собой группу из произвольного числа операторов, отделенных друг от друга точкой с запятой, и ограниченную операторными скобками begin и end.
Декларация:
Begin
<оператор;>
…
<оператор>
End;
Пример:
Begin
A:=A*B+(N-D);
Rez:=A+B*Pi;
Writeln(Rez:12:6)
End;
ОПЕРАТОР ВЫБОРА
Декларация:
if логическое-выражение then оператор-1 [ else оператор-2 ]
Пример:
A:=2;
B:=8;
If A>B then writeln (‘A больше B’)
else writeln (‘А меньше
или равно В’).
ОПЕРАТОР ВАРИАНТА
Декларация:
case
выражение-типа-integer,word,
значение : оператор;
значение-1 .. значение-2 : оператор;
значение-1, значение-2 .. значение-3 : оператор
[ else оператор ]
end
Пример:
Case I of
1: Z:=I+10;
2: Z:=I+100;
3: Z:=I+1000
end;
ОПЕРАТОР ЦИКЛА С ПАРАМЕТРОМ
Декларация:
for целая-переменная := выражение-1 to выражение-2 do
оператор
for целая-переменная := выражение-1 downto выражение-2 do
оператор
ОПЕРАТОР ЦИКЛА С ПРЕДУСЛОВИЕМ (ПОКА ИСТИНА)
Декларация:
while логическое-выражение do
оператор
ОПЕРАТОР ЦИКЛА С ПОСТУСЛОВИЕМ (ПОКА ЛОЖЬ)
Декларация:
repeat
оператор-1; оператор-2; ... оператор-n
until логическое-выражение
Пример:
D:=1; S:=0;
Repeat
S:=S+D; D:=D+1;
Until(D<100);
6) Управление данными
В
стандарте языка Паскаль
При
первом способе (передача по значению)
значения фактических параметров копируются
в соответствующие формальные параметры.
При изменении этих значений в ходе выполнения
процедуры исходные данные (фактические
параметры) измениться не могут. Поэтому
таким способом передают данные только
из вызывающего блока в подпрограмму (т.е.
входные параметры). При этом в качестве
фактических параметров можно использовать
и константы, и переменные, и выражения.
При
втором способе (передача по ссылке) все
изменения, происходящие в теле процедуры
(функции) с формальными параметрами, приводят
к немедленным аналогичным изменениям
соответствующих им фактических параметров.
Изменения происходят с переменными вызывающего
блока, поэтому по ссылке передаются выходные
параметры. При вызове соответствующие
им фактические параметры могут быть только
переменными.
Выбор способа передачи параметров при создании процедуры происходит в соответствии со сказанным выше: входные параметры нужно передавать по значению, а выходные - по ссылке. Практически это сводится к расстановке в заголовке процедуры описателя var при всех параметрах, которые обозначают результат работы подпрограммы.
Пример процедуры:
Procedure Sphere; - {не требует формальных параметров}
Procedure
Sort(A: integer); {A – формальный параметр}
7) Структура программы
Программа на языке Паскаль состоит из заголовка, разделов описаний и раздела операторов. Заголовок программы содержит имя программы, например:
Program PRIM;
Описания могут включать в себя:
Раздел описания модулей определяется служебным словом USES и содержит имена подключаемых модулей (библиотек) как входящих в состав системы Turbo Pascal, так и написанных пользователем. Раздел описания модулей должен быть первым среди разделов описаний. Имена модулей отделяются друг от друга запятыми:
uses CRT, Graph;
Любой оператор в программе может быть помечен меткой. Имя метки задается по правилам образования идентификаторов Турбо Паскаль. В качестве метки также могут использоваться произвольные целые числа без знака, содержащие не более четырех цифр. Метка ставится перед оператором и отделяется от него двоеточием. Все метки, используемые в программе, должны быть перечислены в разделе описания меток, например:
label 3, 471,
29, Quit;
Описание констант позволяет использовать имена как синонимы констант, их необходимо определить в разделе описания констант:
const K= 1024; MAX= 16384;
В разделе описания переменных необходимо указать все переменные, используемые в программе, и определить их тип:
var P,Q,R: Integer;
A,B: Char;