Содержание
Введение
1. Структура программы
2. Алфавит языка
3. Простейшие конструкции
4. Выражения
5. Типы данных
6. Операции
Заключение
Литература
Введение
Тема реферата "Язык Paskal. Основные элементы языка. Структура программы" по дисциплине "Вычислительная техника и основы программирования".
Цель работы – раскрыть основные понятия структуру программы; алфавитязыка; простейшиеконструкции; выражения; типы данных; операции; стандартные функции.
Автором первой версии (1968 г.) алгоритмического языка Pascal
является Никлаус Вирт (профессор, директор института Информатики Швейцарской высшей политехнической школы -1970г., лауреат премии Тьюринга за 1984г.).
В языке Pascal
сконцентрировались многие лучшие черты языков предшественников.
В 1992г. фирма Borland
International
выпустила два пакета программирования, основанные на использовании языкаPascal
:
Borland
Pascal
7.0
и Turbo
-
Pascal
7.0
. Первый включает три режима работы: обычный режим MS
DOS
, защищенный режим MS
DOS
и режим Windows
. Второй позволяет работать только в обычном режиме MS
DOS
, что позволяет использовать его практически на любом современном персональном компьютере. Начинающим программистам целесообразнее начинать изучение языка именно с пакета Turbo
-
Pascal
7.0
.
1. Структура программы
Логически программа в среде Turbo
-
Pascal
7.0
состоит из двух частей:
- описательной (секция определения данных);
- исполнительной (секция определения действий).
{Секция определения данных
}
Label
...;
{раздел определения меток}
Const
...;
{раздел определения констант}
Type
...;
{раздел определения новых типов}
Var
...;
{раздел определения переменных}
function
...;
{раздел определения программных
procedure
...;
единиц}
{ Секция определения действий
}
Begin
...
end
.
Язык Pascal
является языком строгой спецификации данных, поэтому в секции определения данныхдолжны быть описаны все используемые в программе метки, установлены значения констант, описаны имена новых типов данных, описаны переменные и определены пользовательские процедуры и функции.
Секция определения действий
включает последовательность операторов, отделенных друг от друга точкой с запятой. Признаком конца программы является символ - точка.
Программа может включать пояснительные надписи - комментарии,
которые представляют собой произвольные тексты, заключенные в фигурные скобки { ...}
или (* .. *)
и расположенные в любом месте программы.
Пример:
{Программа вычисления площади круга и длины окружности}
{секция определения данных}
Var
R
,
S
,
D
:
real
;
procedure OKR;
begin
D:=2*3.1415*R
end;
{секция определения действий}
Begin
Writeln(
‘Введите значение радиуса R’);
OKR;
Writeln(
‘Площадь круга =’, S);
Writeln(
‘Длина окружности =’,D)
end.
2. Алфавит языка
Алфавит
- совокупность допустимых в языке символов или групп символов, рассматриваемых как единое целое. В среде Turbo
-
Pascal
7.0
все компоненты формируются из множества символов стандарта ASCII
(
American
Standard
Code
for
Information
Interchange
).
Буквы: прописные и строчные буквы латинского алфавита:
Aa
,
Bb
, ..,
Zz
.
Цифры: 0…9
.
Специальные символы : ( )
;[ ]
; { }
; (* *);
.
; ,
;:
;;
;@
; #
;^
; $
;_
;:=
;..
.
*)Знаки арифметических операций: +
; -
; *
; /
; div
mod
;
Знаки отношений: <
; <=
; >
; >=
; =
; <>
.
Знаки логических операций: not
;and
;or
;xor
.
*) Подробнее о назначении и использовании знаков операций см. в разд. Типы данных
.
Типы данных
В состав алфавита входят также зарезервированные слова (например, begin
,
end
,
if
,
then
,
else
,
for
и т.д.), которые воспринимаются как единый символ алфавита и могут использоваться в программах только по своему прямому назначению. Полный перечень зарезервированных слов см. [5].
3. Простейшие конструкции
Идентификатор -
используется для обозначения имен переменных, констант, функций, процедур и других программных единиц. Идентификатор представляет собой любую последовательность букв, цифр и знаков, начинающуюся с буквы (распознаются идентификаторы в среде Turbo
-
Pascal
по первым 63 символам; прописные и строчные буквы не различаются).
Пример:
Summa
Неверно
ALPHA
a
-12
Set
_1 СУММА
Game
_25 25_
Game
Метка -
в среде Turbo
-
Pascal
в качестве метки может использоваться либо целое число без знака из диапазона 0..9999
, либо идентификатор.
Метками при необходимости помечают операторы в программе, от оператора метка отделяется символом двоеточие.
Пример:
M
1:
Y
:=
X
+
Z
;
99:
Write
(
Y
);
145:
end
;
{пустой оператор}
4. Выражения
Выражение
- это синтаксическая единица языка, определяющая способ вычисления некоторого значения, подробнее см.[5, 14].Выражения в среде Turbo
-
Pascal
формируются из констант, переменных, функций, знаков операций и круглых скобок.
Пример:
(
A
+
B
) *
Sin
(
C
)
{арифметическое выражение}
A
+
B
-
C
<> 0
{выражение отношения}
(
A
-
B
> 0)
and
(
C
+
A
=0)
{логическое выражение}
5. Типы данных
Turbo
-
Pascal
предполагает строгую типизацию данных, то есть в программе в секции определения данных должны быть определены все типы объектов, используемых в секции определения действий.
Типы данных Turbo
-
Pascal
6. Операции
Стандартные
Целые
Целые переменные, значения которых принадлежат одному из указанных диапазонов:
Тип |
Диапазон |
Размер, байт |
Shortint |
-128..127 |
1 |
Integer |
-32768..32767 |
2 |
Ljngint |
-2147483648..2147483647 |
4 |
Byte |
0..255 |
1 |
Word |
0..65535 |
2 |
Примеры операций, допустимых над данными целого типа
Арифметические операции:
+ |
сложение; |
- |
вычитание; |
* |
умножение; |
Div |
деление нацело:13 Div 2=6; |
Mod |
остаток от деления:13 Mod 2=1. |
Стандартные функции:
Dec(X,N) |
изменение X на N:Dec(13,2)=15; |
Inc(X) |
увеличение X на 1:Inc(13)=14; |
Odd(X) |
определение четности: Odd(13)=True, Odd(12)=False; |
Abs(X) |
абсолютная величина X:Abs(-13)=13; |
Sqr(X) |
возведение в квадрат: Sqr(2)=4. |
Var X,Y:integer;
Let:byte;
...
X:=15;;Let:=10;
Y:=X mod 5;{Значение Y=0} Y:=X div 4;{Значение Y=3}
Y:=Dec(X,Let);{Значение Y=25} Y:=X-Let;{Значение Y=5}
.
Вещественные
Вещественные переменные, значения которых принадлежат одному из указанных диапазонов:
Тип |
Диапазон |
Размер, байт |
Real |
2.9E-39..1.7E38 |
6 |
Single |
1.5E-45..3.4E38 |
4 |
Double |
5.0E-324..1.7E308 |
8 |
Extended |
3.4E-4932..1.1E4932 |
10 |
Comp |
-9.2E18..9.2E18 |
8 |
Примеры операций, допустимых над данными вещественного типа:
Арифметические операции:
+,-,*, /
(деление).
Стандартные функции:
Trunc
(
X
)
возвращает целую часть X
, результат целый Trunc
(12.95)=12
;
Round
(
X
)
округляет X
до ближайшего целого Round
(12.95)=13
;
Int
(
X
)
возвращает целую часть X
, результат вещественный
Int
(12.95)=12.0
;
Frac
(
X
)
возвращает дробную часть X
, результат вещественный
Frac
(12.95)=0.95
;
Sin
(
X
)
вычисляет значение SinX
;
Cos
(
X
)
вычисляет значение CosX
;
Ln
(
X
)
вычисляет значение LnX
;
Exp
(
X
)
вычисляет значение экспоненциальной функции;
Sqrt
(
X
)
вычисляет значение корня квадратного из X
;
Sqr
(
X
)
вычисляет значение квадрата X
;
Abs
(
X
)
вычисляет модуль Х
.
Var X,Y,Z:real;
...
X:=8.54;Y:=1.64E-3;
Z:=Frac(X);{Z=0.54}
Z:=Int(Y);{Z=0}
Логические
(Boolean
):
Логические переменные занимают 1 байт памяти и принимают одно из двух значений:
False
ложь
True
истина
Var Alpha:boolean;{описание типа логической переменной}
X,Y:real;
...
X:=0.5;Y:=1.5;
Alpha:=X>Y;{Alpha=False}
Alpha:=X<>Y;{Alpha=True}
Примеры операций, допустимых над данными логического типа:
Not
операция логического отрицания НЕ
;
And
операция логического умножения И
;
Or
операция логического сложения ИЛИ
;
Xor
операция сравнения - исключительное ИЛИ
.
Стандартная функция
Ord
(
Alpha
)=0
если аргумент Alpha
=
False
и равна 1
если Alpha
=
True
.
Таблица логических операций
Var
A
,
B
:
boolean
;
A |
B |
not A |
A and B |
A or B |
A xor B |
False |
False |
True |
False |
False |
False |
False |
True |
True |
False |
True |
True |
True |
False |
False |
False |
True |
True |
True |
True |
False |
True |
True |
False |
Символьные (
Char
)
Символьные переменные занимают 1 байт памяти и их значениями служат символы ASCII
-
кода. К символьным данным применимы стандартные функции Pred
,
Succ
,
Ord
.
Примеры операций, допустимых над данными символьного типа:
Var Lit1,Lit2:char;
Nom:byte;
...
Lit1:=’B’;Lit2:=Pred(Lit1);{Lit2=A}
Nom:=Ord(Lit2);
{Nom=65 - ASCII-кодсимвола ‘А’}
Lit1:=Chr(Nom
);{Lit1=’A’ - обратное преобразование ASCII-кода в символ}
Заключение
В процессе написания работы были раскрыты основные понятия структуры программы; алфавитязыка; простейшиеконструкции; выражения; типы данных; операции; стандартные функции; приведены ряд примеров.
Литература
1. Абрамов С.А., Зима Е.В. Начала программирования на языке Паскаль. - М.: Наука, 1987;
2. Абрамов С.А., Зима Е.В. Начала информатики. - М.: Наука, 1988;
3. Довгаль С.И., Литвинов Б.Ю., Сбитнев А.И. Персональные ЭВМ: Турбо-Паскаль V7.0, Объектное программирование, Локальные сети. (Учебное пособие).- Киев, "Информсистема сервис", 1993;
4. Епанешников А.М., Епанешников В.А. Программирование в среде Turbo-Pascal 7.0 .- М.:, Диалог МИФИ, 1993;
5. Йенсен К., Вирт Н. Паскаль: Руководство для пользователя. /Пер. с англ. М.Л.Сальникова, Ю.В.Сальниковой. - М.:, Компьютер, 1993;
6. Перминов О.Н. Программирование на языке Паскаль. - М.: Радио и связь, 1988;
7. Поляков Д.Б., Круглов Н.Ю. Программирование в среде Турбо-Паскаля. - изд.МАИ., М.:, 1992;
8. Прайс Д. Программирование на языке Паскаль. Практическое руководство. /Пер. с англ. - М.:, Мир, 1987;
9. Семашко Г.Л., Салтыков А.И. Программирование на языке Паскаль. - М.: Наука. Гл. ред. физ.-мат. лит.,1993;
10. Фаронов В.В. Турбо-Паскаль. Начальный курс – 1 кн. Практика программирования –2 кн. Учебное пособие. - М.: "Нолидж",1997;
11. Эрбс Х.-Э., Штольц О. Введение в программирование на языке Паскаль./Пер. с нем. - М.:, Мир, 1989
|