Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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




ВВЕДЕНИЕ В ТУРБО ПАСКАЛЬ

 

Методические указания

к выполнению лабораторных работ

по дисциплинам «Информатика», «Информационные технологии»

для студентов очной и заочной формы обучения

направлений 23.03.03, 23.03.01, 13.03.02, 23.05.01, 23.05.02,

15.03.04, 15.03.05, 27.03.04, 20.03.01, 27.03.01, 15.03.01

 

 

Курган 2016

Кафедра: «Информатика»

 

Дисциплины: «Информатика»,

«Информационные технологии»

 

Составили: старший преподаватель В.Я. Котликова.

 

 

Утверждены на заседании кафедры «23» ноября 2015 г.

Рекомендованы методическим советом университета «19» декабря 2014г.

 

Введение

Язык программирования PASCAL был создан в 70-х годах швейцарским ученым Н. Виртом. Он считается одним из самых популярных и удобных языков для тех, кто совершает свои первые шаги в программировании.

Одной из наиболее популярных систем программирования, ориентированных на этот язык, является TURBOPASCAL.

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

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

  • строчные и прописные латинские буквы:

· A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

· a b c d e f g h i j k l m n o p q r s t u v w x y z

  • пробел
  • подчеркивание: _
  • арабские цифры:

0 1 2 3 4 5 6 7 8 9

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

+ - * / = <> < > <= >=:= @

  • ограничители:

., ' () [ ] (..) { } (* *)..:;

  • спецификаторы:

^ # $

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

 

Идентификатором является последовательность символов, которая может состоять из букв, цифр и знака подчеркивания, начинается с буквы или символа подчеркивания и не содержит пробелов. Идентификаторы выступают в качестве имен переменных, констант, типов, процедур, функций, программ, меток и полей в записи. Длина идентификатора может быть любой, но существенны только первые 63 символа. Идентификаторы безразличны к регистру клавиатуры.

 

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

К зарезервированным словам относятся названия операторов, имена логических и арифметических функций, имена директив. Зарезервированные слова не следует использовать в качестве идентификаторов. Список зарезервированных слов:

· ABSOLUTE EXPORTS LIBRARY SET

· ASSEMBLER EXTERNAL MOD SHL

· AND FAR NAME SHR

· ARRAY FILE NIL STRING

· ASM FOR NEAR THEN

· ASSEMBLER FORWARD NOT TO

· BEGIN FUNCTION OBJECT TYPE

· CASE GOTO OF UNIT

· CONST IF OR UNTIL

· CONSTRUCTOR IMPLEMENTATION PACKED USES

· DESTRUCTOR IN PRIVATE VAR

· DIV INDEX PROCEDURE VIRTUAL

· DO INHERITED PROGRAM WHILE

· DOWNTO INLINE PUBLIC WITH

· ELSE INTERFACE RECORD XOR

· END INTERRUPT REPEAT

· EXPORT LABEL RESIDENT

 

 

Типы данных

 

Любые данные, т.е. константы, переменные, значения функций или выражения, в Турбо Паскале характеризуются своими типами.

Тип данных определяет:

· возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу;

· внутреннюю форму представления данных в ЭВМ;

· операции и функции, которые могут выполняться над величинами, принадлежащими к данному типу.

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

В языке Паскаль представлены следующие основные типы данных:

· Простые

o Порядковые

§ Целые

§ Логические

§ Символьные

§ Перечисляемые

§ Интервальные

o Вещественные

· Структурированные

o Массивы

o Строки

o Множества

o Записи

o Файлы

· Указатели

Ниже рассмотрены простые типы данных.

К простым типам относятся порядковые и вещественные типы.

Порядковые типы отличаются тем, что каждый из них имеет конечное число возможных значений. Эти значения можно определённым образом упорядочить (отсюда – название типов) и, следовательно, с каждым из них можно сопоставить некоторое целое число – порядковый номер значения.

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

 

ПОРЯДКОВЫЕ ТИПЫ

К порядковым типам относятся целые, логический, символьный, перечисляемый и тип-диапазон.

Целые типы.

Диапазон возможных значений целых типов зависит от их внутреннего представления, которое может занимать один, два или четыре байта (таблица 1)

 

Таблица 1 – Целые типы

Название Длина, байт Диапазон значений
Byte   0…255
ShortInt   -128…+127
Word   0…65535
Integer   -32768…+32767
LongInt   -2 147 483 648…+2 147 483 647

 

При использовании процедур и функций с целочисленными параметрами следует руководствоваться «вложенностью» типов, т.е. везде, где может использоваться Word, допускается использование Byte (но не наоборот), в LongInt “входит” Integer, который, в свою очередь, включает в себя ShortInt.

Логический тип.

Переменная, имеющая логический тип данных может принимать всего два значения: TRUE (истина) и FALSE (ложь). Истине соответствует значение 1, а ложь тождественна нулю. Объявить булеву переменную можно так:

Var A: Boolean;

Над данными этого типа могут выполняться операции сравнения и логические операции: not, and, or, xor.

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

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

Значением символьного типа является множество всех символов ПК.. Переменная данного типа принимает значение одного из этих символов, занимает в памяти компьютера 1 байт. Слово Char определяет переменную данного типа.

Объявить символьную переменную можно в разделе Var, например:

Var

k: Char;

Существует несколько способов записать символьную переменную (или константу):

1. как одиночный символ, заключенный в апострофы: ‘W’, ‘V’, ‘п’;

2. указав код символа, значение которого должно находиться в диапазоне от 0 до 255.

К величинам символьного типа данных применимы операции отношения и следующие функции:

Succ(x) — возвращает следующий символ;

Pred(x) — возвращает предыдущий символ;

Ord(x) — возвращает значение кода символа;

Chr(x) — возвращает значение символа по его коду;

UpCase(x) — переводит литеры из интервала ‘a’..’z’ в верхний регистр.

Для плодотворной работы с символьным типом следует пользоваться таблицей ASCII (American Standard Code for Information Interchange – американский стандартный код для обмена информацией).

Перечисляемый тип.

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

Пример:

Type Day=(Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday);

Var A: Day;

Переменная A может принимать лишь значения определенные в разделе Type. Также можно объявить переменную перечисляемого типа в разделе Var:

Var A: (Monday, Tuesday);

К данному типу применимы операции отношения, при этом заранее определенно, что Monday<Tuesday<Wednesday т. д. Также можно применять функции succ, pred, ord, процедуры inc и dec, и использовать операцию присваивания: A:=Tuesday;

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

Соответствие между значениями перечисляемого типа и порядковыми номерами этих значений устанавливается порядком перечисления: первое значение списке получает порядковый номер 0, второе – 1 и т.д. максимальная мощность перечисляемого типа составляет 65536 значений.

Тип-диапазон.

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

Тип-диапазон задаётся границами своих значений внутри базового типа: <мин.знач.>..<макс.знач.>,

где <мин.знач.> - минимальное значение типа-диапазона.

<макс.знач.> - максимальное значение типа-диапазона.

TYPE <имя_типа> = <мин. значение>..<макс. значение>;

Пример:

TYPE Cards = 1..36;

При определении типа-диапазона нужно руководствоваться следующими правилами:

1. два символа «..» рассматриваются как один символ, поэтому между ними недопустимы пробелы.

2. левая граница диапазона не должна превышать его правую границу.

Тип-диапазон наследует все свойства базового типа, но с ограничениями, связанными с его меньшей мощностью.

 

ВЕЩЕСТВЕННЫЕ ТИПЫ

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

 

Таблица 2 – Вещественные типы

Название Длина, байт Количество значащих цифр Диапазон десятичного порядка
Real 6l 11…12 -39…+38
Single   7…8 -45…+38
Double   15…16 -324…+308
Extended   19…20 -4951…+4932
comp   19…20 -2*1063+1…+2*1063-1

 

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

VAR X: REAL

 

Операции TURBOPASCAL

1. not логическое отрицание;

2. * умножение, / деление, div, mod – целая часть и остаток от деления двух целых чисел, and – логическое умножение;

3. + сложение, - вычитание, or –логическое сложение;

4. операции сравнения: = равно, < меньше, > больше, <> неравно, >= больше либо равно, <= меньше либо равно.

Пример. X:= 9 div 4; {x = 2}

Y:= 9 mod 4; { y= 1}

Среди операций установлен приоритет (очередность). Самый низкий приоритет у 4-й операции. Операции выполняются слева направо с учетом приоритета. В Паскале для записи математических выражений используются стандартные функции (таблица 3).

 

Таблица 3 ­– Стандартные функции

Функция Назначение Тип аргумента Тип функции
ABS(x) |x| R, I Тип аргумента
SQR(x) x2 R, I Тип аргумента
SQRT(x) R, I R
EXP(x) ex R, I R
LN(x) Ln x R, I R
SIN(x) sin x R, I R
COS(x) cos x R, I R
ARCTAN(x) arctg x R, I R
INT(x) Нахождение целой части вещественного аргумента R R
TRUNC(x) Нахождение целой части (дробная часть отбрасывается) R I
FRAC(x) Нахождение дробной части аргумента R R
ODD(x) Результат TRUE, если x – нечетное; FALSE – если x – четное I Boolean
ROUND(x) Округление x до ближайшего целого R I
RANDOM(x) Нахождение псевдослучайного числа, равномерно распределенного в интервале [0,x] R R
RANDOMIZE(x) Инициализация датчика псевдослучайных чисел    

В таблице 1 R – REAL, I – INTEGER.

 

Пример. Выражение на Паскале запишется sqrt(sqr(x)+sqr(y)).

Замечание 1. Аргументы тригонометрических функций и их значения задаются в радианах.

Замечание 2. Для получения обратных тригонометрических функций можно использовать формулы

.

,

arcсtg(x) = π / 2 - arctg(x).

Возведение положительного числа в вещественную степень следует производить, используя математическое тождество: . На Паскале это записывается так: exp(y*ln(x)).

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

Программа на Паскаль состоит из заголовка, раздела описаний и раздела операторов.

PROGRAM < имя программы >;

раздел описаний

Begin

раздел операторов

End.

имя программы – простой идентификатор.

Раздел описаний может содержать:

1. TYPE – раздел описания типов;

2. CONST – раздел описания констант;

3. VAR – раздел описания переменных;

4. LABEL – раздел описания меток;

5. Function – раздел описания функций;

6. PROCEDURE – раздел описания процедур.

Раздел операторов представляет собой последовательность операторов.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...