Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование.pdf
Скачиваний:
37
Добавлен:
07.06.2015
Размер:
672.16 Кб
Скачать

1. ЭЛЕМЕНТЫ ЯЗЫКА ПАСКАЛЬ. ЛИНЕЙНЫЕ ПРОГРАММЫ

К основным элементам языка Паскаль относятся: переменные, константы и их типы, операции и функции. Кратко опишем основные типы данных в Паскале, некоторые стандартные функции, а также приоритет выполнения операций.

Целочисленные типы

Тип

 

Диапазон значений

 

 

Формат

Shortint

 

128..127

 

 

1 байт со знаком

 

 

 

 

 

 

 

Integer

 

32768..32767

 

2 байта со знаком

 

 

 

 

 

 

 

Longint

 

2147483648..2147483647

 

4 байта со знаком

 

 

 

 

 

 

 

 

Byte

 

0..255

 

 

1 байт без знака

 

 

 

 

 

 

 

 

Word

 

0..65535

 

 

2 байта без знака

 

 

Вещественные типы

 

 

 

 

 

 

 

 

Тип

Диапазон значений

 

Точность

 

Формат

 

 

 

 

 

 

Real

 

2.9E39..1.7E38

 

1112 знаков

6 байт

Single

 

1.5E45..3.4E38

 

78 знаков

 

4 байт

 

 

 

 

 

Double

5.0E324..1.7E308

 

1516 знаков

8 байт

Extended

3.4E4932..1.1E4932

 

1920 знаков

10 байт

 

 

 

 

 

 

Comp

 

9.2E18..9.2E18

 

1920 знаков

8 байт

 

 

 

 

 

 

 

 

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

Арифметические функции

abs(x: real/integer): real/integer – вычисление абсолютного значения x; arctan(x: real): real – вычисление арктангенса x;

cos(x: real): real – вычисление косинуса x; sin(x: real): real – вычисление синуса x;

sqr(x: real/integer): real/integer – вычисление квадрата x; sqrt(x: real): real – вычисление квадратного корня из x;

3

random: real – генерирует случайное число s в pi: real – 3.14159 …
0 ≤ s <1
0 ≤ s < x

exp(x: real): real – вычисление ex ;

ln(x: real): real – вычисление натурального логарифма x; frac(x: real): real – вычисление дробной части x;

int(x: real): real – выделение дробной части x без преобразования типа random(x: word): word – генерирует случайное число s в пределах

пределах

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

Функции преобразования типов

round(x: real): longint округление x до ближайшего целого числа trunc(x: real): longint выделяет целую часть x и преобразует его в longint

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

Приоритет

Типы действия

операции

 

1.

Вычисление в круглых скобках

2.

Вычисление значений функции

3.

Умножение, деление, И (AND)

4.

Сложение, вычитание, ИЛИ (OR)

5.

Операции отношения (= , < > , < , > , <= , >= , in)

 

 

Программа начинается с заголовка, имеющего следующий вид:

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

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

4

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

Program Example_1; var a,b,rez: integer; begin

writeln(‘Введите два числа через пробел’); readln(a,b);

rez:= a*b;

writeln(‘Их произведение равно’,rez); writeln(‘Нажмите <Enter>’); readln;

end.

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

После описательной части идет раздел операторов, начинающийся со служебного слова begin, после которого идут операторы языка. Первый встречающийся оператор – это writeln(‘текст’); – вывести на экран текст, заключенный между апострофами; ln добавляется в конце этого оператора для того, чтобы курсор автоматически переходил на следующую строку при выводе на экран текста или результата выполнения программы.

5

Следующий оператор – это readln(a,b); – читать данные с клавиатуры. В данном случае необходимо ввести два целых числа через пробел, тогда переменной a присваивается значение, равное первому введенному числу, а переменной b присваивается значение, равное второму введенному числу. В конце этого оператора можно ставить ln.

Затем следует оператор присваивания: rez:=a*b; При выполнении этого оператора переменная rez получит значение, равное произведению числа a на число b. Так как в результате умножения двух целых чисел получается целое число, то переменная rez описана типом integer (значениями которого могут быть лишь целые числа).

Следующий оператор – это снова оператор writeln(‘текст’,rez) – он выведет на экран текст, заключенный между апострофами, а за ним значение переменной rez. Затем следующий оператор writeln выведет на экран сообщение: «Нажмите <Enter>», а оператор readln будет ожидать этого нажатия в окне выполнения. В конце раздела операторов стоит служебное слово End, после которого стоит точка.

Program Example_2; const a=12;b=45; var rez: integer; begin

rez:= a*b;

writeln(‘произведение равно’,rez); writeln(‘Нажмите <Enter>’); readln;

end.

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

6