- •Тема 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 разные задачи
Var а, в : array[1..N, 1..N] of integer;
К, М, I, J : INTEGER;
BEGIN
WRITE('BBEДИTE РАЗМЕР МАТРИЦЫ М = ');
READLN (M);
WRITELN('ИСХОДНАЯ МАТРИЦА');
К := 1;
FOR I := 1 ТО М DO
FOR J := 1 TO M DO
BEGIN
A[l, J] := K;
К := K+1;
IF J<M THEN WRITE(A[I, J] : 4)
ELSE WRITELN(A[I, J] : 4)
END;
WRITELN('MATPИЦA ПОСЛЕ ПОВОРОТА НА 180 ГРАДУСОВ');
FOR I := 1 ТО М DO
FOR J := 1 TO M DO
BEGIN
B[l, J] := A[M+1-I, M+1-J];
IF J<M THEN WRITE(B[I, J] : 4)
ELSE WRITELN(B[I, J] : 4)
END;
END.
Для решения задачи:
- формируем тело программы и описываем переменные;
- вводим размеры массива А и присваиваем значения его элементам;
- присваиваем значения элементам матрицы В и выводим их на экран.
Переменные:
А, В - двумерные массивы;
М - количество строк и столбцов массива;
I, J - переменные цикла;
К - вспомогательная переменная.
ВВЕДИТЕ PA3MEР МАТРИЦЫ М = 4
ИСХОДНАЯ МАТРИЦА
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
МАТРИЦА ПОСЛЕ ПОВОРОТА НА 180 ГРАДУСОВ
16 15 14 13
12 11 10 9
8 7 6 5
4 3 2 1
Рис. 7.6. Результат работы PRG7_8
Задача 7.9 Дана квадратная матрица N x N, состоящая из натуральных чисел. Зеркально отразить ее элементы относительно горизонтальной оси симметрии. Вывести результат на экран.
Рассмотрим вначале матрицу 3 х 3 и посмотрим, что происходит с элементами при зеркальном отражении.
А 11 |
А 12 |
А 13 |
|
А 31 |
А 32 |
А 33 |
А 21 |
А 22 |
А 23 |
А 21 |
А 22 |
А 23 |
|
А 31 |
А 32 |
А 33 |
А 11 |
А 12 |
А 13 |
Если считать, что после преобразования у нас появилась новая матрица В, то соответствие между элементами устанавливается следующим образом:
В 11 А 31
В 12 А 32
В 21 А 21
В 22 А 22 и т. д., т. е. В [I, J] A [L, М].
Внимательно изучив соответствие, можно утверждать, что для элементов матрицы N х N справедлива следующая система уравнений: Отсюда правило преобразования элементов выглядит следующим образом: В [ I, J ] = А [ N+1–I, J ].
Программа, решающая данную задачу, так:
PROGRAM PRG7_9;
CONST N = 100;
Var а, в : array[1..N, 1..N] of integer;
К, М, I, J : INTEGER;
BEGIN
WRITE('BBEДИTE РАЗМЕР МАТРИЦЫ М =');
READLN (M);
WRITELN('ИСХОДНАЯ МАТРИЦА');
K:= 1;
FOR I := 1 ТО М DO
FOR J := 1 TO M DO
BEGIN
A[l, J] := K;
K:=K+1;
IF J<M THEN WRITE(A[I, J] : 4)
ELSE WRITELN(A[I, J] : 4)
END;
WRITELN('MATPИЦA ПОСЛЕ ПРЕОБРАЗОВАНИЯ');
FOR I := 1 TO M DO
FOR J := 1 TO M DO
BEGIN
B[l, J] := A[M+1- I, J];
IF J<M THEN WRITE(B[I, J]: 4)
ELSE WRITELN(B[I, J]: 4)
END;
END.
Для решения задачи:
- формируем тело программы и описываем переменные;
- вводим размеры массива А и присваиваем значения его элементам;
- присваиваем значения элементам матрицы В и выводим их на экран.
Переменные:
А, В - двумерные массивы;
М - количество строк и столбцов массива;
I, J - переменные цикла;
К - вспомогательная переменная.
ВВЕДИТЕ РАЗМЕР МАТРИЦЫ М = 4
ИСХОДНАЯ МАТРИЦА
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
МАТРИЦА ПОСЛЕ ПРЕОБРАЗОВАНИЯ
13 14 15 16
9 10 11 12
5 6 7 8
1 2 3 4
Рис. 7.7. Результат работы PRG7_9
Задача 7.10 Дана квадратная матрица N х N, состоящая из натуральных чисел. Зеркально отразить ее элементы относительно вертикальной оси симметрии. Вывести результат на экран.
Рассмотрим вначале матрицу 3 х 3 и посмотрим, что происходит с элементами при зеркальном отражении.
А 11 |
А 12 |
А 13 |
|
А 13 |
А 12 |
А 11 |
А 21 |
А 22 |
А 23 |
А 23 |
А 22 |
А 21 |
|
А 31 |
А 32 |
А 33 |
А 33 |
А 23 |
А 31 |
Если считать, что после преобразования у нас появилась новая матрица В, то соответствие между элементами устанавливается следующим образом:
В 11 А 13
В 12 А 23
В 21 А 23
В 22 А 22 и т. д., т. е. В [I, J] A [L, М].
Внимательно изучив соответствие, можно утверждать, что для элементов матрицы N х N справедлива следующая система уравнений: Отсюда правило преобразования элементов выглядит следующим образом: В [I, J] = A [I, N+1-J]. Программа, решающая данную задачу, выглядит так:
PROSRAM PRG7_10;
CONST N = 100;