Основные функции и процедуры языка программирования Паскаль

Функция Запись на языке Паскаль Примеры
Степенная функция
1.1 Основные функции и процедуры языка программирования Паскаль - student2.ru exp(a*ln(x)) exp(2*ln(3))=9
1.2 Основные функции и процедуры языка программирования Паскаль - student2.ru power(x,a) power(5,2)=25
1.3 Основные функции и процедуры языка программирования Паскаль - student2.ru sqr(х) sqr(6)=36
1.4 Основные функции и процедуры языка программирования Паскаль - student2.ru sqrt(х) sqrt(81)=9
Показательная функция
2.1 Основные функции и процедуры языка программирования Паскаль - student2.ru exp(x*ln(a)) exp(3*ln(2))=8
2.2 Основные функции и процедуры языка программирования Паскаль - student2.ru (e≈ 2.72) exp(х) exp(4)=5.45e+1
Тригонометрические и обратные тригонометрические функции
3.1 sin x (угол в радианах) sin(x) sin(60)=-3.05e-1
3.2 cos x (угол в радианах) cos(x) cos(45)=5.25e-1
3.3 tg x (угол в радианах) sin(x)/cos(x) sin(90)/cos(90)=-1.99
3.4 Основные функции и процедуры языка программирования Паскаль - student2.ru arctan(х) arctan(5)=1.37
3.5 Основные функции и процедуры языка программирования Паскаль - student2.ru pi/2-arctan(х) pi/2-arctan(5)=1.97е-1
Логарифмические функции
4.1 ln x(х>0) ln(х) ln(5)=1.61
4.2 Основные функции и процедуры языка программирования Паскаль - student2.ru ln(x)/ln(a) log28=ln(8)/ln(2)=3
Другие математические функции
5.1 Основные функции и процедуры языка программирования Паскаль - student2.ru (модуль x) abs(х) abs(-4)=4
5.2 Основные функции и процедуры языка программирования Паскаль - student2.ru (целая часть вещественного числаx) int(x) int(3.77)=3.00
5.3 Основные функции и процедуры языка программирования Паскаль - student2.ru (дробная часть вещественного числаx) frac(х) frac(4.74)=0.74
5.4 Округление до ближайшего целого числа round(х) round(-1.5)=-2; round(1.2)=1
Дополнительные функции
6.1 Генерация псевдослучайного числа изинтрвала от 0 до k–1 random(k) random(10) генерация псевдослучайногочисла изинтрвала от 0 до 9
6.2 Уменьшение значения х на y (если y не указано, то на 1) dec(x,y) x:=x-y; dec(29)=28; dec(34,20)=14
6.3 Увеличение значения х на y (если y не указано, то на 1) inc(x,y) x:=x+y; inc(7)=8; inc(6,5)=11
6.4 Целочисленное делениех на y x div y (10div 3)=3
6.5 Нахождения остатка от деления х на y x mod y (10 mod 3)=1
6.6 Число Основные функции и процедуры языка программирования Паскаль - student2.ru ( Основные функции и процедуры языка программирования Паскаль - student2.ru ≈3.14) pi Основные функции и процедуры языка программирования Паскаль - student2.ru в программе запишется pi/4

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

1) одинаковые типы;

2) один тип является поддиапазоном другого типа;

3) типы являются отрезками одного и того же основного типа;

4) множественные типы с совместимыми базовыми типами;

5) один тип строковый, другой – pchar;

6) один тип – pointer, другой – любой тип указателя;

7) один тип – pchar, другой – символьный массив с нулевой базой вида array [0..x] ofchar (при расширении расширенного синтаксиса директивой {$X+});

8) оба типа – указатели идентичных типов (при расширении расширенного синтаксиса директивой {$X+});

9) оба типа являются процедурными типами с идентичными типами результатов, одинаковым числом параметров и соответствием между параметрами.

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

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

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

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

Begin

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

End.

1. Заголовок программы.Заголовок программы содержит ключевое слово program и имя программы. Имя программы должно удовлетворять специальным требованиям (см. раздел «Имена и ключевые слова»). Кроме того, если программу не предполагается использовать как отдельный модуль, ее имя не должно совпадать с именем файла.

2. Раздел описаний.Раздел описаний включает в себя несколько частей: описание модулей, меток, констант, типов, переменных, процедур и функций.

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

Синтаксис раздела описания модулей:

uses {список модулей};

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

Пример. Подключение модулей. clrscr(англ., clearscreen – очистка экрана) – процедура для очистки экрана из модуля crt.

uses crt, graph, my_module;

begin

clrscr;

...

end.

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

Раздел описания меток, если он присутствует, начинается с ключевого слова label, за которым через запятую перечисляются метки, используемые в программе.

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

label {список меток};

Любой оператор программы может быть помечен меткой, отделяющейся от него двоеточием. Метка – это либо имя, либо целое положительное число от 0 до 9999. Метки служат для перехода к определенному оператору в программе с помощью оператора безусловного перехода goto. (Использование оператора gotoпротиворечит принципам структурного программирования, поэтому рекомендуется использовать его как можно реже.)

Пример. Описание и использование меток.

labelm1;

begin

...

m1: writeln('Не обработанная ошибка');

...

gotom1;

...

end.

Если раздел описания констант присутствует, он начинается с ключевого слова const (англ., constant – постоянный), за которым через точку с запятой перечисляются константы с указанием их имен.

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

constимя_константы=значение_константы;

Пример. Описание констант.

const n=10; max=4000; name='Pavel';

Раздел описания типов, если он присутствует, начинается с ключевого слова type (англ., type – тип). При описании нового типа данныхзадается его имя и после знака равно его определение. Типы данных, определяемые пользователем, перечисляются через точку с запятой.

Синтаксис раздела описания типов:

typeимя_типа=описание_типа;

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

type color=array[1..5] of real;

menu=(file,edit,view,help);

Раздел описания переменных, если он присутствует, начинается с ключевого слова var(англ., variable – переменный). При описании переменной задается ее имя и через двоеточие тип данных. Переменные разных типов перечисляются через точку с запятой. Переменные одного типа перечисляются через запятую.

Синтаксис раздела описания переменных:

varимя_переменной:тип_переменной;

Пример. Описаниепеременных.

var x,y:real; i,j:integer; name:word; b:byte;

flag:boolean;

Далее идет раздел описания процедур и функций. (Работа с процедурами и функциями в учебном пособии не рассматривается).

3. Раздел операторов.Раздел операторов – обязательная часть программы, которая содержит исполняемые в программе операторы. Эта часть программы начинается с ключевого слова begin и заканчивается ключевым словом end (рис. 1.2) (англ., begin – начало, end – конец). Операторы в этой части программы отделяются друг от друга символом «точка с запятой». В конце программы, после последнего end,ставится точка.

programимя_программы; //Заголовок программы
//Раздел описания модулей uses //список модулей; //Раздел описания меток label //список меток; //Раздел описания констант constимя_константы=значение_константы; //Раздел описания типов typeимя_типа=описание_типа; //Раздел описания переменных varимя_переменной:тип_переменной; //Раздел описаний
begin//начало программы оператор_1; оператор_2; … Оператор_N end.//конец программы //Раздел операторов

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

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

1) каждый раздел при описании модулей, меток, констант, типов, переменных и подпрограмм записывается с новой строки:

2) каждый тип данных записывается с новой строки;

3) после знаков препинания ставится пробел;

4) на одной строке располагается только один оператор;

5) вложенный оператор записывается на отступ левее, чем внешний оператор.

Кроме того, для улучшения «читаемости» и понимания программы можно использовать комментарии, пробелы и пустые строки.

Комментарии в программе

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

1) комментарии заключаются в фигурные скобки { };

2) комментарии заключаются в скобки вида (* *);

3) комментарии следуют за двумя косыми чертами //.

Пример. Пояснение текста программы с помощью комментариев.

programprog;

varx,y:real; {раздел описания переменных}

Begin (*начало программы*)

writeln('Введите х');

read(x); //ввод данных

y:=cos(x);

writeln('y=',y);//вывод данных

end. (*конец программы*)

Контрольные вопросы

1. Что включает в себя алфавит языка программирования Паскаль. Можно ли использовать при написании программы на Паскале русские буквы?

2. Будут ли различаться записи max и MAX в программе, записанной на языке программирования Паскаль?

3. Как называются величины, которые не изменяют свое значение во время выполнения программы? В каком разделе они описываются? Что указывается при их описании?

4. Как называются величины, которые изменяют свое значение во время выполнения программы? В каком разделе они описываются? Что указывается при их описании?

5. Перечислите правила языка программирования Паскаль, по которым даются имена.

6. Можно ли в качестве имен переменных использовать ключевые слова?

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

8. Запишите числа 0,000374 и 576000000 в экспоненциальной форме.

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

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

11. Операнды в выражении должны иметь совместимые типы. Перечислите известные Вам совместимые типы.

12. Опишите структуру программы в языке программирования Паскаль.

13. Какие из перечисленных разделов программы являются обязательными:

1) заголовок программы: program имя;

2) раздел описания модулей uses;

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

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

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

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

7) раздел операторов begin . . . end?

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

Рекомендуемая литература

1. Павловская, Т.А. Паскаль. Программирование на языке высокого уровня / Т.А. Павловская. – СПб.: Питер, 2010. – 464 с.

Наши рекомендации