Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Turbo Pascal / Учебники / Учебник по Паскалю.doc
Скачиваний:
60
Добавлен:
15.06.2014
Размер:
633.34 Кб
Скачать

Ооо “Универсал-центр” Методическое пособие по изучению программирования в интегрированной среде turbo pascal 7.0

Днепропетровск,1997

Программа

по изучению курса

Программирование в среде TURBO PASCAL 7.0”

1.Алфавит языка

  1. Идентификаторы

  2. Разделители

  3. Специальные символы

  4. Неиспользуемые символы

2.Структура программы

3.Типы данных

  1. Классификация типов данных

  2. Простые типы данных

4.Выражения

  1. Переменные

  2. Константы

  3. Стандартные функции

  4. Знаки операций

  5. Круглые скобки

  6. Порядок вычислений

5.Операторы языка

  1. Простые операторы ( присваивания, безусловного перехода,пустой)

  2. Структурированные операторы (if,case,repeat,while,for)

6.Структурированные типы данных

  1. Массивы

  2. Строки

  3. Записи

  4. Множества

  5. Файлы

7.Процедуры и функции

  1. Процедура

  2. Функция

  3. Формальные и фактические параметры

  4. Процедура exit

  5. Рекурсии

8.Процедурные типы данных

9.Совместимость и преобразование типов

  1. Идентичность типов

  2. Совместимость типов

  3. Преобразование типов

10.Динамические структуры данных

  1. Указатели

  2. Операции

11.Ввод-вывод

12.Модули

13.Стандартные модули

  1. Crt

  2. Graph

  3. System

  4. Printer

Алфавит языка.

Алфавит-совокупность допустимых в языке символов. Паскаль оперирует со следующим набором символов:

а) Прописные(заглавные) и строчные латинские буквы ( от A до Z ) ;

б)арабские цифры от 0 до 9;

в) Специальные символы:

знаки пунктуации

знак Применение

{ } Скобки комментария

[ ] Выделение индексов массивов,элементов множеств,размера строки

( ) Выделение выражений,списков параметров

‘ Апостроф для выделения символа,строковой константы

:= Знак присваивания

; Разделение предложений программы (операторов и объявлений)

: отделение переменной или типизированной константы от

типа,метки,оператора.

= Отделение идентификатора типа от описания типа

, Запятая для разделения элементов списка

.. Разделение границ диапазона

. Обозначение конца программы,отделение дробной части от целой в

вещественном числе,отделение полей в записи

^ Обозначение типа указателя

@ Обозначение адреса переменной

# Обозначение символа по его коду

$ Обозначение директивы компилятора

знаки операций

+ плюс , - минус , * умножить, / разделить

разделители

любой управляющий символ (коды от 0 до 31)

пробел

комментарий

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

Служебные слова ( операторы паскаля ,имена директив )

Некоторые символы ( %,?,& и т д ) не используются в паскале,но их можно

использовать в комментариях и символьных строках.

Структура программы.

В программе,написанной на языке Pascal,могут быть следующие разделы :

* заголовок программы; program имя;

* список используемых модулей; uses cписок исп.модулей;

* раздел объявления меток; label

* раздел объявления констант; const

* раздел объявления типов; type

* раздел объявления переменных; var

* раздел объявления процедур и функций; procedure,function

begin

..............

..............

* т е л о п р о г р а м м ы. End.

Заголовок программы состоит из зарезервированного слова program и имени программы (со списком параметров , заключенных в круглые скобки).Завершается заголовок точкой с запятой.

Порядок размещения разделов произвольный. Разделы могут отсутствовать.

Тело программы начинается словом begin , а заканчивается словом end с точкой, которая является признаком конца программы.

Раздел меток (label). Любой выполняемый оператор может иметь метку- целую положительную константу, содержащую не более 4 цифр ( от 0 до 9999) или обычный идентификатор. Все метки должны быть описаны в разделе label:

label : метка1,...,меткаn;

Метка отделяется от оператора двоеточием.

Раздел констант (const). Если в программе используются константы, то их можно описать в разделе const:

const имя1=значение1;

имя2=значение2;

.............................;

имяn=значениеn;

Двоеточие перед знаком равенства не ставится.

Допускается использование типизированных констант:

const имя:тип=значение;

Обычные константы могут быть целого,вещественного,символьного,логического типа и типа string, типизированные константы- любого типа,кроме типа файл.

Раздел типов: (tуре) .

В этом разделе описываются имена типов переменных, отличные от стандартных ,т.е. массивы, записи, множества и т.д.

type имя1=вид_типа_1;

имя2=вид_типа_2;

................................

имя1,имя2- идентификаторы вводимых типов.

Раздел переменных:

В этом разделе должны быть описаны все переменные,встречающиеся в программе:

var список1:тип_1;

список2:тип_2;

список_1,список_2-перечень переменных через запятую. Тип переменной можно задать двумя способами :

а) указать имя типа из раздела type,

б) описать сам тип.

Раздел процедур и функций содержит описание процедур и функций,вызываемых в теле программы.

Подробнее см. раздел Процедуры и функции.

Тело программы содержит операторы языка Pascal.

Типы данных

типы

данных

простые структури указатели

рованные

Ограниченные Скалярные объекты

записи процедурные

перечисляемые стандартные множества

файлы

целые логические вещественные символьные массивы строки

Все простые типы, за исключением вещественных,называются порядковыми типами.

Целые типы

Тип

Диапазон

Формат

Размер в байтах

Shortint

-128..127

знаковый

1

Integer

-32768..32767

знаковый

2

Longint

-2147483648

2147483647

знаковый

4

Byte

0..265

Беззнаковый

1

Word

0..65535

беззнаковый

2

Стандартный логический тип Boolean ( размер -1 байт ) представляет собой тип данных,любой элемент которого может принимать лишь два значения: True и False.

При этом True >False

Ord(false)=0

Ord(true)=1

Succ(false)=true

Pred(true)=false.

Символьный тип.

Стандартный символьный тип char определяет полный набор ASCII-символов.

Функция ord от величины типа char дает код соответствующего символа. Сравниваются величины символьного типа по своим кодам.

Вещественные типы данныж.

Тип

Диапазон

Число знечащих цифр

Размер в байтах

real

2.9*10^-39..

1.7*10^38

11-12

6

Single

1.5*10^-45..

3.4*10^38

7-8

4

Double

5.0*10^-324..

1.7*10^308

15-16

8

Extended

3.4*10^4932..

1.1*10^4932

19-20

10

Comp

-2^63+1..

2^63-1

19-20

8

Тип comp фактически является типом целых чисел увеличенного диапазона, однако порядковым не считается.

Типы single,double,extended,comp можно использовать в программах только при наличии арифметического сопроцессора или включенного эмулятора сопроцессора.

Перечисляемый тип данных.

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

Type day=(mo,tu,we,th,fr,sa,sa);

var d1,d2,d3:day;

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

Т.о. переменные d1,d2,d3 типа day могут принимать при выполнении программы только одно из указанных семи значений.

Объект,указанный в списке,может присутствовать не более,чем в одном описании.

Имена объектов,указанных в описании перечисляемого типа, являются константами этого типа. Поэтому, имея описания type name=(jonn,tom,nick,ann,jane);

type color=(red,blue,black);

var x,y,z:name;

c1,c2,c3:color;

можно записать

c1:=blue;x:=ann;y:=tom;c2:=red;

Нельзя присваивать переменной значение из описания другого типа.

Для перечисляемого типа данных существенен порядок указанных объектов.

К данным перечисляемого типа применимы операции отношения.

Например, из предыдущего описания и примеров операторов следует, что выражения x>jonn,

c2<c1, y<x имеют значения true.

Для перечислимого типа данных определены стандартные функции pred, succ ,ord, имеющие тот же смысл, что и для стандартных скалярных типов. Например, для типа color результатом функции succ(red) является значение blue, pred(black) - blue. Функция Ord(blue) выработает значение, равное единице, т.к. нумерация объектов в списке начинается с нуля.

В языке Паскаль нельзя непосредственно вводить и выводить на внешние устройства значения перечисляемых типов.

В следующем фрагменте с внешнего носителя вводится порядковый номер объекта из списка значений перечисляемого типа . Оператор case присваивает соответствующее значение переменной clr. Аналогично осуществляется вывод значений переменной clr при помощи оператора варианта.

Program cas;

type color=(red,blue,black);

var x:integer;clr:color;

begin

write(‘ введите номер цвета ‘);

readln(x);

case x of

0: clr:=red;

1: clr:=blue;

2: clr:=black;

end;

write(‘ цвет-‘);

case clr of

red:writeln(‘red’);

blue:writeln(‘ blue’);

black:writeln(‘black’);

end;

end.

Соседние файлы в папке Учебники