Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник_Часть_1.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
974.85 Кб
Скачать

1. With elem 50

DO begin 50

a:=1998; 50

b:=37.5, 50

c:=’И.И. Петров’ 50

end; 50

2. for i:=1 to 10 do 50

with tabl[i] 50

do begin 50

read(a,b); 51

readln(c) 51

end; 51

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

{Ввод элементов записи} 51

const Nmax=30; 51

type Zap=Record 51

nom:byte; 51

fio:string[20]; 51

kurs, group:byte; 51

ocen:array[1..5] of real; 51

end; 51

arr_zap = array[1..Nmax] of zap; 51

var 51

list:arr_zap; 51

n:1..Nmax; 51

begin 51

write(‘Задайте количество студентов в списке …’); 51

readln(n); 51

for i:=1 to n do 51

with list[i] 51

do begin 51

write(‘Задайте личный номер студента ’); 51

readln(nom); 51

write(‘Задайте фамилию ’); 51

readln(fio); 51

write(‘курс и группа ’); 51

readln(kurs, gruppa); 51

write(‘средние оценки за каждый год ’); 51

for j:=1 to 5 51

do readln(ocen[i]); 51

readln 51

end 51

end. 51

7. ТИПИЗИРОВАННЫЕ КОНСТАНТЫ 51

Рис. 7.1. Синтаксическая диаграмма описания типизированной константы 52

7.1. Типизированные константы скалярных типов 52

7.2. Типизированные константы - массивы и строки 52

П р и м е р ы : 52

7.3. Типизированные константы – множества 53

7.4. Типизированные константы – записи 54

Рис. 7.4. Синтаксическая диаграмма типизированной константы – записи 54

8. ФАЙЛЫ 54

8.1. Типизированные файлы 55

8.2. Текстовые файлы 57

При выполнении первого варианта получим 1 2 3 4 5 58

9. ПОДПРОГРАММЫ 59

9.1. Процедуры и функции 60

9.2. Процедуры и функции пользователя 60

Q := TRIANGLE( 2, 3, 4 ); 62

9.3. Параметры подпрограмм 62

10. РЕКУРСИИ 63

10.1. Рекурсивные алгоритмы и определения 63

10.2. Рекурсивные процедуры и функции 64

10.3. Виды рекурсивных процедур 66

11. ГРАФИКА В ПАСКАЛЕ 68

11.1. Основы работы в графическом режиме 68

Begin 69

11.2. Система координат дисплея 70

11.3. Экран и окно 71

11.4. Установка цвета, заполнения и палитры 71

11.5. Построение простейших геометрических образов 72

Вывод точки: PutPixel (x, y: integer; Color: word); 72

11.6. Работа с текстом 73

11.7. Вывод числовых значений 73

12. ПРОГРАММНЫЕ МОДУЛИ 73

12.1. Структура программного модуля 74

END. 74

Модуль следует хранить в одноимённом файле с расширением PAS. 76

12.2. Трансляция модуля. «Сборка» программы 76

12.3. Ссылки на модули 77

Рис. 12.1. Ссылки на модули 77

Рмс. 12.2. Взаимные ссылки модулей 77

{Модуль hlp _ sr – вспомогательные расчёты} 77

13. ДИНАМИЧЕСКАЯ ПАМЯТЬ 78

Рис. 13.1. Распределение памяти 80

13.1. Адресация памяти 81

13.2. Указатели 81

@<Имя переменной> или функция 82

Рис. 13.2. Синтаксическая диаграмма типизированного указателя 82

13.3. Создание и уничтожение динамических переменных 83

1. Типизированные объекты 83

Рис. 13.3. Задание значения переменной, на которую ссылается указатель 84

2. Создание и уничтожение беcтиповых объектов 84

13.4. Администратор кучи 84

Рис. 13.4. Указатели кучи 84

13.5. Примеры использования указателей 85

13.5.1. Объявление 85

R^ := B^; 86

14. ИСПОЛЬЗОВАНИЕ УКАЗАТЕЛЕЙ ДЛЯ ОРГАНИЗАЦИИ СВЯЗАННЫХ ДИНАМИЧЕСКИХ СТРУКТУР 87

14.1. Списки 87

Рис. 14.1. Список в динамической памяти 87

14.2. Организация стека в динамической памяти 90

14.3. Очереди 91

Var 91

no,ko,p:poch;{no –начало очереди, ko – конец очереди} 91

Procedure putoch(n:integer);{помещает значение в очередь} 92

Procedure getoch(var n:integer);{извлек. эл-т из очереди} 92

14.4. Деревья 92

Рис. 14.2. Изображение дерева (а); структура, не являющаяся деревом (б) 93

Начальная вершина (в которую не входит стрелка) называется корнем. Вершины, из которых не выходят стрелки, – терминальные (листья) (помечены кружками). Структура, выходящая из одного узла – поддерево. Дерево, у которого из каждой вершины выходит не более двух стрелок, называется бинарным или двоичным деревом. Уровень количество стрелок, которые нужно пройти, чтобы добраться от нулевого уровня к данной вершине. 93

Рис. 14.3. Формула в виде двоичного дерева 93

Рис. 14.5. Дерево из четырех уровней 95

Рис. 14.6. Отсортированный список 97

Рис. 14.7. Упорядоченное двоичное дерево 98