- •Вятский государственный университет
- •Язык программирования Pascal
- •Алфавит языка Pascal
- •Структура программы
- •Присваивание
- •Ввод и вывод данных
- •Типы данных
- •Стандартные функции и процедуры
- •Операции
- •Разветвляющиеся вычислительные процессы
- •Циклы в языке Pascal
- •Оператор цикла с параметром (for)
- •Оператор цикла с предусловием (while)
- •Оператор цикла с постусловием (repeat)
- •Стандартные процедуры Break и Continue
Присваивание
Под выражением понимают структуру, которая состоит из операндов и знаков операций. Операнды — это константы и переменные, операции — действия, выполняемые над операндами. Для того чтобы результаты выражений могли храниться в переменных, их необходимо присвоить этим переменным. Для этого используется оператор присваивания:
Имя переменной := арифметическое выражение .
Для типов переменной слева и арифметического выражения справа от оператора присваивания существуют ограничения:
если переменная слева вещественного типа, то арифметическое выражение может быть как целого, так и вещественного типа, то есть содержать либо целые переменные и допустимые для них операторы, либо вещественные, либо те и другие (тогда выражение преобразуется к вещественному типу);
если переменная слева целого типа, то арифметическое выражение должно быть целочисленным.
Ввод и вывод данных
Для сообщения данных компьютеру служат процедуры ввода и вывода. Процедура ввода помещает вводимое значение переменной в отведенную для нее ячейку.
Формат процедуры ввода:
Read(список ввода):
Эта процедура приостанавливает работу программы и ждет, когда пользователь введет с клавиатуры данные и нажмет клавишу Enter. Если список ввода содержит несколько имен, то надо ввести данные для каждого имени.
Процедура readln (read line — читать строку) отличается от read тем, что после выделения очередного значения из введенной с клавиатуры строки и присваивания его последней переменной из списка ввода инструкция readln переводит курсор в начало следующей строки.
Если тип данных, вводимых с клавиатуры, не соответствует или не может быть приведен к типу переменных, имена которых указаны в read (readln), то программа аварийно завершает работу и на экран выводится сообщение об ошибке.
Процедура write предназначена для вывода на экран сообщений и значений переменных. После слова write в скобках задается список имен переменных. Кроме имен переменных в список можно включить сообщение — текст, заключенный в апострофы.
Формат процедуры вывода:
write(список вывода);
После имени переменной через двоеточие можно поместить описание поля вывода значения переменной (то есть формат переменной). Для переменной целого типа формат задается в виде целого числа, определяющего ширину поля вывода (количество позиций на экране).
Для переменных вещественного типа формат задается двумя целыми числами, разделенными двоеточием. Первое число определяет ширину поля вывода, а второе — количество цифр после десятичной точки.
Например:
writeln ('Ha улице хорошая погода');
writeln ('Целое а = ', а:3);
write ('Вещественное b = ', b:10:3);
Процедура writeln (write line — писать в строку) отличается от инструкции write только тем, что после вывода сообщений или значений переменных курсор переводится в начало следующей строки.
Типы данных
Тип объекта определяет множество допустимых значений, которые может иметь этот объект, а также множество допустимых операций, которые применимы к нему. Кроме того, тип определяет формат внутреннего представления данных в памяти компьютера.
Формат описания типов:
type имя типа = значения типа.
Формат описания переменных:
var идентификатор : имя типа.
К простым (скалярным) типам данных относятся типы данных, значения которых не содержат составных частей: целые типы, вещественные типы, логический (булев) тип, символьный тип, перечисляемый тип, ограниченный тип (тип диапазон).
Таблица 1 – Целые типы:
Тип |
Диапазон значений |
Число байт в памяти |
Byte |
0...255 |
1 |
Shortint |
-128...127 |
1 |
Word |
0...65 535 |
2 |
Integer |
-32 768...32 767 |
2 |
Longint |
-2 147 483 648...2 147 483 647 |
4 |
Таблица 2 – Вещественные типы:
Тип |
Диапазон |
Количество значащих цифр |
Число байт в памяти |
Real |
10-39..10+38 |
11-12 |
6 |
Single |
10-45..10+3S |
7-8 |
4 |
Double |
10-324..10+308 |
15-16 |
8 |
Extended |
10-4932..10+4932 |
19-20 |
10 |
Comp |
(-263+l)...(263-l) |
19-20 |
8 |
Логический (булев) тип данных boolean представлен всего двумя значениями — true и false.
Символьный тип char занимает 1 байт и определяется множеством значений кодовой таблицы ЭВМ. Каждому символу соответствует целое число в диапазоне 0...255.
Перечисляемый тип задается перечислением (в круглых скобках) всех доступных значений. Формат записи:
type имя типа = (знач.1, знач.2 , … , знач.N);
Ограниченный тип (тип диапазон) есть подмножество, состоящее из элементов базового типа, который задается двумя константами, определяющими границы диапазона значений для данной переменной.
Формат записи:
type имя типа = мин знач .. макс знач;
Ограниченный и перечисляемый типы занимают в памяти 1 байт (8 бит), поэтому не могут содержать более 256 значений.