Turbo Pascal

Автор работы: Пользователь скрыл имя, 06 Апреля 2011 в 16:10, реферат

Краткое описание

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

Содержимое работы - 1 файл

Язык программирования.doc

— 160.00 Кб (Скачать файл)

операции типа сложения:  +  -  or  xor

операции отношения:  =  <>  <  >  <=  >=  in

Порядок выполнения операций переопределить можно с  помощью скобок. Например 2*5+10 равно 20, но 2*(5+10) равно 30.

Основные  математические функции

В этом разделе  приведены основные математические функции, встроенные в системную  библиотеку Турбо Паскаль.

Abs(X)

Возвращает абсолютное значение числа X.

Cos(X), Sin(X)

Возвращает косинус (синус) числа X, где X - угол в радианах.

Функций тангенс  и котангенс в Турбо Паскале нет. Для их вычисления используйте выражение sin(x)/cos(x) (или cos(x)/sin(x) для котангенса).

ArcTan(X)

Возвращает арктангенc числа X.

Exp(X)

Возвращает число, равное e в степени X.

Ln(x)

Возвращает число, равное натуральному логарифму от числа X.

Pi

Число Пи.

Sqr(X)

Возвращает число, равное квадрату числа X.

Функции возведения в произвольную степень в Турбо  Паскале нет. Используйте многократное умножение для возведения в целочисленную  степень, либо функции Exp и Ln для возведения в вещественную степень. 
 
 
 
 
 
 

Sqrt(X)

Возвращает число, равное квадратному корню из числа X.

Trunc(X)

Возвращает число, равное целой части числа X. (Происходит отбрасывание дробной части числа X. Результат выполнения имеет тип Longint).

Frac(X)

Возвращает число, равное дробной части числа X.

Int(X)

Возвращает число, равное целой части числа X. Результат выполнения функции - real.

Round(X)

Функция округляет число X. Возвращаемое значение имеет тип Longint.

Random(X)

Возвращает случайное целое число в диапазоне 0..X. Если аргумент опущен (Random), то возвращается случайное вещественное число от 0 до 1.

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

Inc(X,Y)Увеличивает значение числа X на Y. Если число Y не указано, то увеличение происходит на 1.

Dec(X,Y)

Уменьшает значение числа X на Y. Если число Y не указано, то уменьшение происходит на 1. 

 
Операторы ввода и вывода

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

Ввод  данных

Для ввода исходных данных чаще всего используется процедура ReadLn:

ReadLn(A1,A2,...AK);

Процедура производит чтение К значений исходных данных и присваивает эти значения переменным А1, А2, ..., АК.

При вводе исходных данных происходит преобразование из внешней формы представления во внутреннюю, определяемую типом переменных. Переменные, образующие список ввода, могут принадлежать либо к целому, либо к действительному, либо к символьному типам. Чтение исходных данных логического типа в языке Паскаль недопустимо.Значения исходных данных могут отделяться друг от друга пробелами и нажатием клавиш табуляции и Enter.

Не допускается  разделение вводимых чисел запятыми!

Вывод данных

Для вывода результатов  работы программы на экран используются процедуры:

Write(A1,A2,...AK);

WriteLn(A1,A2,...AK);

Первый из этих операторов производит вывод значений переменных А1, А2,...,АК в строку экрана. Второй оператор, в отличие от первого, не только производит вывод данных на экран, но и производит переход  к началу следующей экранной строки. Если процедура writeln используется без параметров, то она просто производит пропуск строки и переход к началу следующей строки.

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

Форма представления  значений в поле вывода соответствует  типу переменных и выражений: величины целого типа выводятся как целые  десятичные числа, действительного типа - как действительные десятичные числа с десятичным порядком, символьного типа и строки - в виде символов, логического типа - в виде логических констант TRUE и FALSE.

Оператор вывода позволяет задать ширину поля вывода для каждого элемента списка вывода. В этом случае элемент списка вывода имеет вид А:К, где А - выражение или строка, К - выражение либо константа целого типа. Если выводимое значение занимает в поле вывода меньше позиций, чем К, то перед этим значением располагаются пробелы. Если выводимое значение не помещается в ширину поля К, то для этого значения будет отведено необходимое количество позиций.

Для величин  действительного типа элемент списка вывода может иметь вид А:К:М, где  А - переменная или выражение действительного  типа, К - ширина поля вывода, М - число цифр дробной части выводимого значения. К и М - выражения или константы целого типа. В этом случае действительные значения выводятся в форме десятичного числа с фиксированной точкой.

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

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

Program PRIM;

Описания могут  включать в себя:

раздел подключаемых библиотек (модулей);

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

раздел описания констант;

раздел описания типов;

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

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

Раздел  описания модулей определяется служебным словом USES и содержит имена подключаемых модулей (библиотек) как входящих в состав системы Turbo Pascal, так и написанных пользователем. Раздел описания модулей должен быть первым среди разделов описаний. Имена модулей отделяются друг от друга запятыми:

uses CRT, Graph;

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

label 3, 471, 29, Quit;

Описание констант позволяет использовать имена как  синонимы констант, их необходимо определить в разделе описания констант:

const K= 1024; MAX= 16384;

В разделе описания переменных необходимо указать все переменные, используемые в программе, и определить их тип:

var P,Q,R: Integer;

    A,B:   Char;

    F1,F2: Boolean;

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

Раздел  операторов представляет собой составной оператор, который содержит между служебными словами

begin.......end

последовательность операторов. Операторы отделяются друг от друга символом ;. Текст программы заканчивается символом точка. 
 
 

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

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

Подробности..

Текст Паскаль - программы может содержать ключи  компиляции, которые позволяют управлять  режимом компиляции. Синтаксически  ключи компиляции записываются как комментарии. Ключ компиляции содержит символ $ и букву-ключ с последующим знаком + (включить режим) или - (выключить режим). Например:

{$E+} - эмулировать  математический сопроцессор; 
{$F+} - формировать дальний тип вызова процедур и функций; 
{$N+} - использовать математический сопроцессор; 
{$R+} - проверять выход за границы диапазонов.

Некоторые ключи  компиляции могут содержать параметр, например:

{$I имя файла} - включить в текст компилируемой  программы названный файл.

Циклы

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

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

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

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

Арифметические  циклы

Синтаксис:

for переменная := значение 1 to значение 2 do оператор

или

for переменная := значение 1 downto значение 2 do оператор

Оператор for вызывает оператор, находящийся после слова do, по одному разу для каждого значения в диапазоне от значения 1 до значения 2.

Переменная цикла, начальное и конечное значения должны иметь порядковый тип. Со словом to, значение переменной цикла увеличивается на 1 при каждой итерации цикла. Со словом downto, значение переменной цикла уменьшается на 1 при каждой итерации цикла. Не следует самостоятельно изменять значение управляющей переменной внутри цикла.

Как и в случае использования оператора условного  прехода, следует помнить, что синтаксис  языка допускает запись только одного оператора после ключевого слова do, поэтому, если вы хотите в цикле выполнить группу операторов, обязательно надо объединить их в составной оператор (окаймить операторными скобками begin ... end). В противном случае будет сделана логическая ошибка программы.

Итерационные  циклы с предусловием

Синтаксис:

while выражение do оператор

Оператор после do будет выполняться до тех пор, пока логическое выражение принимает истинное значение (True). Логическое выражение является условием возобновления цикла. Его истинность проверяется каждый раз перед очередным повторением оператора цикла, который будет выполняться лишь до тех пор, пока логическое выражение истинно. Как только логическое выражение принимает значение ложь (False), осуществляется переход к оператору, следующему за while.

Информация о работе Turbo Pascal