Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Универсальный язык программирования

Поиск

Turbo- Pascal 7.0

СТРУКТУРА ПРОГРАММЫ. АЛФАВИТ. ПРОСТЕЙШИЕ КОНСТРУКЦИИ. ВЫРАЖЕНИЯ

Автором первой версии (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, ему и посвящен этот краткий курс лекций.

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

Логически программа в среде Turbo-Pascal 7.0 состоит из двух частей:

n описательной (секция определения данных);

n исполнительной (секция определения действий).

{ Секция определения данных }

Label...; {раздел определения меток}

Const...; {раздел определения констант}

Type...; {раздел определения новых типов}

Var...; {раздел определения переменных}

 

function...; {раздел определения программных

procedure...; единиц}

{ Секция определения действий }

Begin

...

End.

Язык Pascal является языком строгой спецификации данных, поэтому в секции определения данных должны быть описаны все используемые в программе метки, установлены значения констант, описаны имена новых типов данных, описаны переменные и определены пользовательские процедуры и функции.

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

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

 

Пример

R S=3.1415*R2

D=2*3.1415*R

{Программа вычисления площади круга и длины окружности}

Var R,S,D: real;

procedure OKR;

begin {секция определения

S:= 3.1415*R*R; данных}

D:=2*3.1415*R

end;

Begin

Writeln(‘ Введите значение радиуса R’ ); {секция определения

Readln(R); действий}

OKR;

Writeln(‘ Площадь круга =’, S);

Writeln( ‘Длина окружности =’, D)

end.

· Алфавит

Алфавит - совокупность допустимых в языке символов или групп символов, рассматриваемых как единое целое. В среде Turbo-Pascal 7.0 все компоненты формируются из множества символов стандарта ASCII (American Standard Code for Information Interchange).

Буквы:прописные и строчные буквы латинского алфавита: Aa,Bb,..,Zz.

Цифры: 0..9.

Специальные символы: () [ ] { } (* *).,:; @ # ^ $ _:=.. *)

Знаки арифметических операций: + - * / div mod

Знаки отношений: < <= > >= = <>

Знаки логических операций: not and or xor

 

· Простейшие конструкции

Идентификатор - используется для обозначения имен переменных, констант, функций, процедур и других программных единиц. Идентификатор представляет собой любую последовательность букв, цифр и знаков _, начинающуюся с буквы (распознаются идентификаторы в среде Turbo-Pascal по первым 63 символам; прописные и строчные буквы не различаются).

 

Пример

Summa Неверно

ALPHA a-12

Set_1 СУММА

Game_25 25_Game

Метка - в среде Turbo-Pascal в качестве метки может использоваться либо целое число без знака из диапазона 0..9999, либо идентификатор.

Метками при необходимости помечают операторы в программе, от оператора метка отделяется символом двоеточие.

 

Пример

M1: Y:=X + Z;

99: Write(Y);

145: end; {пустой оператор}

· Выражения

Выражение - это синтаксическая единица языка, определяющая способ вычисления некоторого значения. Выражения в среде Turbo-Pascal формируются из констант, переменных, функций, знаков операций и круглых скобок.

 

Пример

(A + B) * Sin(C) {арифметическое выражение}

A + B - C <> 0 {выражение отношения}

(A - B > 0) and (C + A=0) {логическое выражение}

ТИПЫ ДАННЫХ

Turbo-Pascal предполагает строгую типизацию данных, то есть в программе в секции определения данных должны быть определены все типы объектов, используемых в секции определения действий.

 

Типы данных Turbo-Pascal

 
 


Простые Структурированные Ссылочные Процедурные

       
   


Перечисляемые Интервальные Стандартные: целые вещественные логические символьные  
Массивы Строки Записи Множества Файлы Объекты    
 
 
перечисляемые массивы

интервальные строки

стандартные: записи

целые множества

вещественные файлы

Простые тип

 

 

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

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

 

Type MONTH=(Feb,Mar,Apr,May);

COLOR=(Red,Green,Blue);

Var X:MONTH;

Y:COLOR;

 

Примеры операций, допустимых над данными перечисляемого типа:

X:=Mar; Y:=Green;

Pred(X)=Feb; {предыдущий элемент перечня}

Succ(Y)=Blue; {последующий элемент перечня}

Ord(X)=1; {номер элемента в перечне (нумерация с нуля)}

Очевидно,что функция Pred не определена для нулевого элемента перечня, а функция Succ для последнего

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

Интервальный тип (диапазон) является отрезком какого-либо другого базового типа.

Type MONTH=(Feb,Mar,Apr,May);

Var X:Feb..Apr;

Y:Mar..May;

Day:1..31;

Year:1990..1998;

Примеры операций, допустимых над данными интервального типа.

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

Y:=Apr; Pred(Y)=Mar

Day:=12; Dec(Day,10)=22 {изменение аргумента Day на 10)

Year:=1990; Inc(Year)=1991 {увеличение аргумента Year на 1)

Day:=10; Day:=Day+12; { Day=22 операция сложения}

 

· Стандартные

Целые

Целые переменные, значения которых принадлежат одному из указанных диапазонов:

 

Тип Диапазон Размер, байт

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 операция сравнения - исключительное ИЛИ

 

Таблица логических операций

Var A,B:boolean;



Поделиться:


Последнее изменение этой страницы: 2016-12-13; просмотров: 185; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.37.129 (0.006 с.)