Рефераты. Алгоритмический язык Паскаль

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

2. ОПИСАНИЕ ЯЗЫКА ПАСКАЛЬ

2.1 Основные объекты языка

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

Буквы: латинские от A до Z, от a до z и русские от А до Я, от а до я

Цифры: 0 1 2 3 4 5 6 7 8 9

Специальные символы: + - * / = ^ < > () [ ] { }.,:; ' # $

Зарезервированные слова:

absolute

downto

function

nil

record

To

and

else

goto

not

repeat

Type

array

end

if

of

set

Until

begin

external

in

or

shl

Var

case

file

inline

packed

shr

While

const

for

label

procedure

string

With

div

forward

mod

program

then

Xor

do

Стандартные идентификаторы (имена):

Arctan ConInPtr FilePos Length Port Sqr

Assign ConOutPt FileSize Ln Pos Sqrt

Aux Concat FileChar Lo Pred Str

AuxInPrt ConstPtr Flush LowVideo Ptr Succ

AuxOutPrt Copy Frac Lst Random Swap

BlockRead Cos GetMem LstOutPtr Randomize Text

BlockWrite CrtExit GotoXY Mark Read Trm

Boolean CrtInit HeapPtr MaxInt Readln True

BufLen DelLine Hi Mem Real Trunc

Byte Delay IOresult MemAvail Release UpCase

Chain Delete Input Move Rename Usr

Char EOF InsLine New Reset UsrInPtr

Chr EOLN Insert NormVideo Rewrite UsrOutPtr

Close Erase Int Odd Round Val

ClrEol Execute Integer Ord Seek Write

ClrScr Exp Kbd Output Sin Writeln

РАЗДЕЛИТЕЛИ

Символами-разделителями считаются пробелы, концы строк (разделители строк) и комментарии. Внутри лексем ни разделители, ни их части встречаться не могут. Между двумя следующими друг за другом лексемами должен обязательно следовать один или несколько разделителей.

Комментарии в Паскаль-программе начинаются с символа { или (*и заканчиваются } или *). Сам комментарий может содержать любые символы, кроме } и *). Любой комментарий можно заменить в программе на пробел.

Символы-разделители применяются часто для улучшения читаемости программы.

Например:

program PRIMER;

{Программа сложения натуральных чисел}

var I,J,K: integer;

begin

readln(I,J); { Ввод двух слагаемых }

K:=I+J;

writeln(I,'+',J,'=',K); {Печать результата в форме 12+3=15}

end.

2.2 Структура Паскаль - программы

Язык Паскаль, как учебный алгоритмический язык, лег в основу разработки школьного алгоритмического языка, поэтому оба они имеют много общего и прежде всего это касается структуры программ (алгоритмов).

РАЯ

ПАСКАЛЬ

АЛГ<имя>

PROGRAM<имя>

ДАНО

Раздел

НАДО

объявлений

НАЧ

BEGIN

-

-

-

Блок программы

- Серия команд

(серия операторов)

-

-

-

-

КОН

END

Сравнительный анализ представленной схемы показывает, что по своему внешнему оформлению запись алгоритма на школьном алгоритмическом языке и программы на языке Паскаль во многом схожи. Действительно, оба этих описания начинаются с заголовка, в котором обязательно указывается имя алгоритма (программы). Наличие имени связано с тем обстоятельством, что описанный алгоритм в РАЯ и программа в Паскале могут служит вспомогательным алгоритмом (процедурой) для других, более сложных алгоритмов (программ).

В обоих языках принято описывать (объявлять) все переменные, фигурирующие в алгоритме (программе) с указанием их типов. Правда, в РАЯ эти переменные подразделяются еще на аргументы, результаты и промежуточные переменные, а в Паскале они просто перечисляются в разделе объявлений.

Идентификатор - это последовательность букв или цифр, начинающаяся с буквы. Отметим, что в системе TURBO в идентификаторах могут встречаться не любые буквы, а только латинские. Под оператором понимается указание ЭВМ по выполнению каких-либо действий.

Как видно из диаграммы, любая Паскаль-программа имеет имя, за которым может следовать список идентификаторов, заключенных в скобки. Заголовок программы заканчивается точкой с запятой. Затем идут объявления, служащие для описания типов данных, процедур и функций. Далее BEGIN, один или несколько операторов, разделенных точками с запятой, и в конце ставится END с точкой. При написании программ используются лексемы и разделители, определенные алфавитом языка.

По написанию инструкций (операторов) Паскаль, как и язык РАЯ, довольно свободен. Инструкция может занимать не одну, а несколько строк. На одной строке можно разместить несколько инструкций. Здесь можно вставлять пробелы и пустые строки (но пробелы в служебных словах недопустимы). Для лучшей читабельности программы строки можно располагать лесенкой.

2.3 Типизация данных

Данные - это общее понятие всего того, с чем оперирует ЭВМ. Любой тип данных определяет множество значений, которые может принимать та или иная переменная, и те операции, которые можно к ним применять. Каждая встречающейся в программе переменная может иметь один и только один тип.

В Паскале имеется три типа данных: простые, составные и ссылочные. Рассмотрим вначале простой тип данных, представленный на следующей схеме:

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

К любому ординальному значению X применимы три следующие встроенные функции:

ORD(X) - дает порядковый номер, соответствующий X. Результат относится к типу INTEGER;

SUCC(X)- дает следующее за X значение, если X не максимальный элемент соответствующего типа. В последнем случае SUCC(X) суть ошибка;

PRED(X)- дает предыдущее X значение, если только X не минимальный элемент соответствующего типа. В последнем случае PRED(X) суть ошибка.

Наиболее простыми из ординальных типов являются предописанные или встроенные типы: INTEGER, BOOLEAN и CHAR, которые определяют соответственно числовые, логические (булевские) и литерные (символьные) величины. К встроенному (но не ординальному) типу данных относится также тип REAL.

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

Перечислимый тип задается перечислением всех своих элементов, что видно на следующей синтаксической диаграмме:

DEN_NED = (MO, TU, WE, TH, FR, SA, SU);

MONETA = (1, 2, 3, 5, 10, 20, 50).

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.