- •Тема I Основные понятия языка pascal 7.0
- •1.1. Алфавит и структура программы
- •Алфавит
- •Структура программы
- •I, j : integer;
- •1.2. Структура данных
- •Простые типы данных
- •Структурированные типы данных
- •Указатели
- •Процедурные типы
- •Объекты
- •Преобразование типов данных
- •1.3. Операторы языка
- •Простые операторы
- •Структурированные операторы
- •1.4. Процедуры ввода-вывода
- •Var I, j : integer;
- •Практические задания
- •Тема 2 Производящие функции и ряды
- •Var n, I: integer;
- •Var I, n, f : integer;
- •Var I, n, f, j, r, m : integer;
- •Var I, n, f, j, r, m : integer;
- •Var I, n, f, j : integer;
- •Var I, n, sum : integer;
- •Var I, n, m, к : integer;
- •If flag then
- •Var I, n, m, k, nod : integer;
- •Var I, n, m, k, nod, nok : integer;
- •Var n, r, m : integer;
- •Var n, r, м, к, I : integer;
- •If f then writeln('число', n, ' he палиндром')
- •Var X, y, z:real; I, n : integer;
- •Var X, y, z : real;
- •Var X,y. Z, е : real;
- •I: integer;
- •Var X, y, z, e : real;
- •I: integer;
- •Var X, y, z : real;
- •Практические задания
- •Тема 3 Обработка числовых последовательностей
- •Var n, X, sum, I: integer;
- •Var n, X, к, I: integer;
- •Var n, X, max, I: integer;
- •Var n, X, max, I: integer;
- •Var X, min1, min2 : integer;
- •Var old, new : real;
- •If f then
- •Var old, new : real; к : integer;
- •Var old, new, f : real;
- •Var old, new : real;
- •If f then
- •Var old, new : real;
- •If f then
- •Var poroda : string;
- •I, к, n : integer;
- •Var pol : string;
- •I, к, n : integer;
- •Практические задания
- •Тема 4 Символьные переменные и строки
- •Var I: char;
- •Var I: char;
- •Var I, l : char;
- •Var str: string;
- •If not(str[I] in m) then write(str[I])
- •Var str : string;
- •If not(str[I] in m) then write(str[I]);
- •Var str : string;
- •If (str[I] - '!') then write(V)
- •Var str : string;
- •Var str : string;
- •Тема 5 Обработка строк
- •Var str, wrd : string;
- •I, l : integer;
- •Var s1, str : string;
- •I: integer;
- •Var s1, str: string;
- •Var s1: string;
- •Var s1 : string;
- •Var s1 : string;
- •X : char;
- •Var s1 : string;
- •Var м, к, I, j : integer;
- •Var I, к : integer;
- •Var I, к : integer;
- •Var I, к : integer;
- •Var I, l : integer;
- •1234567890 Ааааааа .
- •Var I, l : integer;
- •If f then writeln('палиндром')
- •1234567890 Ааааааа .
- •Практические задания
- •Тема 6 Одномерные массивы
- •Var mas : array[1..M] of integer;
- •I, max, k, n : integer;
- •Var mas : array[1..M] of integer;
- •I, k, n : integer;
- •Var mas : array[1..M] of integer;
- •I, k, new, n : integer;
- •Var mas : array[1..M] of integer;
- •I, j, k, new, n : integer;
- •Var mas : array[1..M] of real;
- •I, n : integer;
- •Var mas : array[1..M) of real;
- •I: integer;
- •Var mas, num2, num5 : array[1..M] of integer;
- •Практические задания
- •Тема 2 Двумерные массивы
- •Var a : array[1..T, 1..S] of integer;
- •Var а : array[1..T, 1..S] of integer;
- •Var a : array[1..T, 1..S] of integer;
- •Var a : array[1..T, 1..S] of integer;
- •Var a : array[1..T, 1..S] of char;
- •Var a : array[1..T, 1..T] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Var а, в : array[1..N, 1..N] of integer;
- •Практические задания
- •Тема 8 Работа с файлами
- •Var f1, f2 : text;
- •X : char;
- •International
- •Var f1, f2 : text;
- •X : char;
- •International
- •Var Fl : text;
- •X: char;
- •International
- •Var f1 : text;
- •X : char;
- •International
- •Var f1 : file of char;
- •X : char;
- •I: integer;
- •International
- •Var f1 : file of char;
- •X : char;
- •International
- •Var f1 : file of char;
- •X : char;
- •International
- •Var f1 : file of char;
- •X : char;
- •International
- •Тема 9 Процедуры и функции
- •Var I, j : integer;
- •Var n, m : integer;
- •Var I, j : integer;
- •Var n, m : integer;
- •Var I, j : integer;
- •Var I, j : integer;
- •Var s : string;
- •Var I: integer;
- •Var I, j : integer;
- •Var I, j : integer;
- •Var n : longint;
- •Var s : integer;
- •Var n : longint;
- •Var s : integer;
- •Var а, в, d, к, X, y : integer;
- •Var а, в, d, к, X, y : integer;
- •Var а, в : integer;
- •Var к: integer;
- •Var I : integer;
- •Var n : longint;
- •Var s : integer;
- •Var а, в, X, d, y : integer;
- •Var а, в : integer;
- •Var к: integer;
- •Практические задания
- •Тема 10 Работа с текстом. Модуль crt
- •Var I: char;
- •Var I:integer;
- •Var X, I: integer;
- •Var I: integer;
- •Var X, y, I: integer;
- •Var X, y, I: integer;
- •Var X, y, I: integer;
- •Практические задания
- •Тема 11 Графика. Модуль Graph
- •Initgraph(driver, mode,' ');
- •Var driver, mode : integer;
- •Var driver, mode,
- •X, y : integer;
- •Var driver, mode,
- •X, y : integer;
- •Var driver, mode, X, y : integer ;
- •Var driver, mode, X, y : integer;
- •Var driver, mode, X, y : integer;
- •Var driver, mode, X, y, I: integer;
- •Var driver, mode, X, y, I, t : integer;
- •Var driver, mode, X, y, I, t : integer;
- •Var driver, mode, X, y, I, t : integer;
- •Var driver, mode, X, y, I, t, y0 : integer ;
- •Var driver, mode, X, y, I, t, xo : integer;
- •Var driver, mode, X, y, r : integer;
- •Var driver, mode, X, y, x1, y1, r : integer;
- •Var driver, mode, X, y, r, I: integer ;
- •Var driver, mode, X, y, r, rx, ry, lx, ly, I, size : integer;
- •Var driver, mode, X, y, r : integer;
- •Практические задания
- •Тема I 3 Разные задачи
- •Var f1:file of nn;
- •I:integer;
- •Var I:integer;
- •Var I, min,max:integer;
- •Var I,j:integer;
- •Var I,j:integer;
- •In_metr;
- •I,n:integer;
- •Var I:integer;
- •If I in s1 then
- •Приложение Зарезервированные слова borland pascal 7.0
- •Литература
- •Оглавление
- •1.1. Алфавит и структура программы
- •Тема 13 разные задачи
I, j : integer;
L : REAL;
STR : STRING;
Раздел объявления процедур и функций. Все используемые процедуры и функции должны быть объявлены до начала входа в основную программу.
Тело программы. Тело программы обязательно и должно быть заключено между BEGIN и END с точкой.
1.2. Структура данных
Используемые различные типы данных в PASCAL имеют огромное значение при программировании, т. к. определяют способы и алгоритмы обработки этих данных. Например, алгоритмы решения задач о палиндроме для целого числа(задача 2.10) и для строки (задача 5.13) строятся по-разному, хотя оба основаны на последовательном просмотре.
Определим понятие формально: под типом данных понимается множество допустимых значений переменных, а также совокупность операций над ними.
В PASCAL 7.0 можно выделить следующие группы типов:
■ простые типы;
■ структурированные типы;
■ указатели;
■ процедурные типы;
■ объекты.
При программировании можно использовать как стандартные типы данных, не требующие предварительного определения, так и определяемые самим программистом.
К стандартным типам относятся:
■ целые типы - SHORTINT, INTEGER, LONGINT, BYTE, WORD;
■ вещественные типы - REAL, SINGLE, DOUBLE, EXTENDED, COMP;
■ логические типы BOOLEAN;
■ символьный тип CHAR;
■ тип-строка - STRING;
■ ASCII-строка - PCHAR;
■ текстовый файл TEXT;
■ тип-указатель POINTER.
Все другие используемые типы должны быть определены либо в разделе объявления типов, либо в разделе объявления переменных или типизированных констант.
Раздел объявления типов начинается зарезервированным TYPE, после которого определяются вводимые типы. Определение каждого нового типа начинается с идентификатора типа. За ним следует знак равенства, а далее - само определение, завершающееся точкой с запятой:
TYPE
<имя типа 1> = <определение типа 1>;
<имя типа 2> = <определение типа 2>;
…………..
<имя типа N> = <определение типа N>;
Простые типы данных
Рассмотрим простые типы данных. Простой тип определяет упорядоченные значения переменной. К простым типам относятся:
■ целые типы;
■ логический тип;
■ перечисляемые типы;
■ тип-диапазон;
■ символьный тип;
■ вещественные типы.
Все простые типы данных, кроме вещественных, называются порядковыми, и для них определены функции:
DEC(N) Уменьшение N
INC(N) Увеличение N
ORD(N) Порядковый номер N
ODD(N) Проверка N на четность
PRED(N) Предшествующее значение N
SUCC (N) Последующее значение N
Например: DEC(6) = 5, a INC(5) = 6. PRED('b') = 'a', SUCC('B') = 'С.
Целые типы. В PASCAL 7.0 введено 5 стандартных целых типов, которые отличаются форматами и диапазонами допустимых значений.
Тип |
Значение |
Формат |
SHORTINT |
– 128..127 |
Знаковый |
INTEGER |
– 3276S..32767 |
Знаковый |
LONGINT |
– 214748364S..2147483647 |
Знаковый |
BYTE |
0..255 |
Беззнаковый |
WORD |
0..65535 |
Беззнаковый |
Для работы с целыми типами данных используются константы MAXINT, MININT и, помимо уже рассмотренных, следующие арифметические функции, результат которых - тоже целое число:
ABS(N) Абсолютная величина N
A DIV В Целая часть от деления
A MOD В Остаток от деления
+ Сложение
* Умножение
– Вычитание
TRUNC(X) Получение целой части вещественного числа X
ROUND(X) Округление до целого вещественного числа X
SQR(N) Квадрат числа N
Логические типы. Эти типы могут принимать только два значения: True - истина и False - ложь. Про их значения известно, что
True > False
SUCC(False) = True
ORD(False) = 0
ORD(True) = 1
PRED(True ) = False
Для работы с логическими операндами введены следующие логические функции:
NOT - отрицание;
OR - объединение, или логическое сложение;
AND - пересечение, или логическое умножение;
XOR - исключающее ИЛИ, или сложение по модулю два.
Результат работы операций задается следующей таблицей истинности (таблицы значений):
А |
NOT A |
В |
NOT В |
A AND В |
A OR В |
A XOR B |
False |
True |
False |
True |
False |
False |
False |
False |
True |
True |
False |
False |
True |
True |
True |
False |
False |
True |
False |
True |
True |
True |
False |
True |
False |
True |
True |
False |
Запомнить эту таблицу очень просто. Операция отрицания меняет значения операнда на противоположное. Для того, чтобы результат операции логического умножения был истинен, все операнды должны быть истинны. Для того, чтобы логическое сложение даю истину, нужно, чтобы хотя бы один операнд был истинен, а сложение по модулю два дает истину, только если операнды имеют разные значения. Иногда эту операцию называют выбором альтернативы или жегалкинским сложением (в честь известного русского математика И. И. Жегалкина).
Символьный тип. Стандартный символьный тип CHAR определяет полный набор ASCII-символов. В программе при задании символьных значений необходимо использовать апострофы:
Z := 'А';
Y := 'В';
Z := '9';
Функция ORD возвращает код соответствующего символа. Сравниваются величины символьного типа по своим кодам. Они упорядочены следующим образом:
'А' < 'В' <... <'Z'
'а' < b' <... <'z'
'0' < '1' <... <'9'
'а' < 'б' <... <я
'А' < 'Б' <... <'Я'.
Перечисляемые типы. Перечисляемые типы определяются программистом. Список идентификаторов указывается в круглых скобках, идентификаторы разделяются запятыми:
TYPE
<имя типа> = (идентификатор 1, идентификатор 2,..., идентификатор N);
Важно, в каком порядке перечислены идентификаторы при определении типа. В списке первому идентификатору присваивается порядковый номер 0, второму - 1 и т. д. Один и тот же идентификатор можно использовать в определении только одного перечисляемого типа. Функция ORD от величины перечисляемого типа дает порядковый номер ее значения.
Тип-диапазон. Задается начальным и конечным значениями, которые разделяются двумя точками: TYPE
<имя типа> = <минимальное значение>...<максимальное значение>;
Например, для определения целых чисел в интервале от – 10 до 10 можно написать
TYPE
NUM = – 10..10;
Вещественные типы. В PASCAL 7.0 определено пять стандартных вещественных типов, которые отличаются форматами и диапазонами допустимых значений:
Тип |
Значение |
Число значащих цифр |
REAL |
2.9* 10-39.. l.7*1038 |
11-12 |
SINGLE |
1.5*10-45.. 3.4*1038 |
7-8 |
DOUBLE |
5.0*10-324.. 1.7*103O8 |
15-16 |
EXTENDED |
3.4*10-4932.. 1.1*104932 |
19-20 |
СОМР |
-263+1.. 263-1 |
19-20 |
Результат работы функций сложения, умножения, деления, вычитания и возведения в квадрат вещественных чисел дает вещественное число. Кроме этого, используются следующие функции, результат которых - вещественное число:
Функция |
Назначение |
ABS(X) |
Абсолютное значение X |
ARCTAN(X) |
Арктангенс X |
COS(X) |
Косинус X |
ЕХР(Х) |
ех |
FRAC(X) |
Дробная часть X |
INT(X) |
Целая часть X |
LN(X) |
Натуральный логарифм |
PI |
Значение PI = 3.1415926535897932385 |
SIN(X) |
Синус X |
SQR(X) |
Квадрат X |
SQRT(X) |
Квадратный корень X |