Это методическое пособие предназначено для желающих самостоятельно научиться решать задачи по основным разделам предмета на языках Бейсик и Паскаль. Предлагаемая методика включает

Вид материалаМетодическое пособие

Содержание


XII.8.Компиляция модуля
System Используемые модули: нет
DOS Используемые модули: нет
Crt Используемые модули: нет
Printer Используемые модули
Write( Lst, 'Сумма ', A:4, ' и ', В:4, ' равна ' )
Graph 3 Используемые модули: Crt
Graph Используемые модули: нет
XIII. Стандартные процедуры и функции Паскаль
Процедуры управления работой программы
функции передачи
Round - округляет значение вещественного типа до значе­ния, имеющего длинный целый тип. Trunc
Арифметические функции
Процедуры и Функции перечислимого типа
Строковые процедуры и функции
функции для работы с указателями и адресами
Смешанные процедуры и функции
II. Элементы математической логики 6
IV. Введение в алгоритмические языки BASIC и PASCAL 15
VI. Условные операторы 27
...
Полное содержание
Подобный материал:
1   ...   17   18   19   20   21   22   23   24   25

XII.8.Компиляция модуля


Модуль компилируется точно так же, как компилируется программа: он создается с помощью редактора, а затем вызыва­ется команда Compile/Compile (Компилировать/Компилировать) (или нажимаются клавишами Alt-C). Однако, вместо файла с расширением .ЕХЕ Турбо-Паскаль создает файл с расширением .TPU (Turbo Pascal Unit - модуль Турбо-Паскаля). После этого Вы можете оставить этот файл как есть или же вставить его в TURBO.TPL с помощью TPUMOVER.ЕХЕ.

В любом случае имеет смысл переслать файлы с расширени­ем .TPU (вместе с исходными файлами) в каталог модулей, ко­торый определен с помощью команды 0/D/Unit directories (Ка­талоги модулей). Таким образом, вы можете ссылаться на эти файлы, не указывая директивы {$U} (Команда Unit directories (Каталоги модулей) позволяет задавать компилятору несколько каталогов для поиска файлов модулей).

В одном исходном файле может находиться только один мо­дуль, поскольку компиляция прекращается, как только обнару­жен завершающий оператор end.

TURBO.TPL


Файл TURBO.TPL содержит стандартные модули: System, Crt, DOS, Printer, Graph, ТuгbоЗ и GгарhЗ. Эти модули загружаются в память вместе с Турбо-Паскалем; они всегда доступны для пользователя. Обычно файл TURBO.TPL хранится в том же каталоге, что и TURBO.EXE (или ТРС.ЕХЕ). Однако, Вы можете хранить его в любом месте, если, конечно, это "любое место" определено как каталог Турбо. Это можно определить с помощью программы TINST.EXE, которая инсталлирует каталог Турбо не­посредственно в файл TURBO.EXE.


System Используемые модули: нет

System содержит все стандартные и встроенные процедуры и функции Турбо-Паскаля. Любая подпрограмма Турбо-Паскаля, не являющаяся частью стандартного Паскаля и не находящаяся ни в каком другом модуле, содержится в System. Этот модуль присоединяется ко всем программам.

DOS Используемые модули: нет

DOS определяет многочисленные паскалевские процедуры и функции, которые эквивалентны наиболее часто используемым вызовам DOS, как, например, GetTime, SetTime, DiskSize и так далее. Кроме того, он определяет две программы низкого уров­ня MsDos и Intr, которые позволяют активизировать любой вы­зов МS DOS или системное прерывание. Registers представляет собой тип данных для параметра в МS Dos и Intr. Кроме того, определяются некоторые другие константы и типы данных.

Crt Используемые модули: нет

Crt обеспечивает набор специфичных для IBM PC описаний констант, переменных и программ для операций ввода/вывода. Последние можно использовать для работы с экраном (задание окон, непосредственное управление курсором, цвет текста и фона). Кроме того, Вы можете осуществлять "необработанный" ввод с клавиатуры и управлять платой генерации звукового сигнала персонального компьютера. Этот модуль обеспечивает множество подпрограмм, которые были стандартными в версии 3.0.


Printer Используемые модули: Crt

В модуле Printer дано описание переменной текстового файла Lst, которая связывается с драйвером устройства, поз­воляющим направлять стандартный для Паскаля вывод на печата­ющее устройство с помощью Write и Writeln. Например, включив Printer в свою программу, Вы можете сделать следующее:

Write( Lst, 'Сумма ', A:4, ' и ', В:4, ' равна ' );

С:= А + В;

Writeln( Lst,C:8 );


Graph Используемые модули: Crt

Graph обеспечивает набор быстродействующих, эффективных графических подпрограмм, которые позволяют использовать в полной мере графические возможности Вашего персонального компьютера. Этот модуль реализует независимый от устройства графический драйвер фирмы "Борланд", позволяющий поддержи­вать графические адаптеры типа СGА, ЕGА, Hercules, ATT 400, МСGА, 3270 PC и VGA.


Graph 3 Используемые модули: Crt

Graph 3 поддерживает полный набор графических подпрог­рамм для версии 3.0 - для обычной, расширенной графики и графики, использующей относительные команды. Они идентичны по имени, параметрам и функции подпрограмм версии 3.0.

TurboЗ Используемые модули: Crt

Этот модуль содержит две переменные и несколько проце­дур, которые больше не поддерживаются Турбо-Паскалем. Они включают встроенную файловую переменную Kbd, булевую перемен­ную CBreak и первоначальные целочисленные версии MemAvail и MaxAvail (которые возвращают размер свободной памяти в параграфах, а не в байтах, как это делают настоящие версии).


Graph Используемые модули: нет

Модуль Graph не встроен в файл TURBO.TPL. Вместо этого он содержится на том же диске, что и вспомогательные файлы .BGI и .CHR. Поместите файл GRAPH.TPU в текущем каталоге или используйте для задания маршрута файла GRAPH.TPU полное имя пути доступа.

В модуле Graph содержится ряд быстрых и мощных графи­ческих процедур, позволяющих вам полностью использовать гра­фические возможности компьютера IBM PC (и совместимых с ним). Он реализует независимый от устройств, графический драйвер фирмы Борланд, осуществляющий поддержку адаптеров СGА, ЕGА, Hercules, АТ&Т400, МGВА, 3270 PC, VGA и графики 8514.

XIII. Стандартные процедуры и функции Паскаль


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

Процедуры управления работой программы


Процедура Exit - позволяет немедленно выйти из текущего модуля.

Процедура Halt - останавливает выполнение программы и возвращает выполнение операционной системе.

Процедура RunError - останавливает выполнение программы и генерирует ошибку времени выполнения.

функции передачи


Процедуры Pack и Unpack, определенные в стандартном Паскале, в Турбо-Паскале не реализованы.

Chr - возвращает символ, заданный целым числам.

Ord - возвращает порядковое число по значению перечис­лимого типа.

Round - округляет значение вещественного типа до значе­ния, имеющего длинный целый тип.

Trunc - усекает значение вещественного типа до значе­ния, имеющего длинный целый тип.

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


Abs - возвращает абсолютное значение аргумента.

Arctan - возвращает арктангенс аргумента.

Cos - возвращает косинус аргумента.

Exp - возвращает экспоненту аргумента.

Frac - возвращает дробную часть аргумента.

Int - возвращает целую часть аргумента.

Ln - возвращает натуральный логарифм аргумента.

Pi - возвращает значение числа Pi (3,141592653897932385).

Sin - возвращает синус аргумента.

Sqr - возвращает аргумент в квадрате.

Sqrt - возвращает квадратный корень аргумента.

Процедуры и Функции перечислимого типа


Процедура Dec - уменьшает значение переменной.

Процедура Inc - увеличивает значение переменной.

Процедура Odd - проверяет, является ли аргумент нечет­ным числом.

Процедура Pred - возвращает предшествующее значение ар­гумента.

Процедура Succ - возвращает его последующее значение.

Строковые процедуры и функции


Функция Concat - выполняет конкатенацию последователь­ности строк.

Функция Copy - возвращает подстроку строки.

Процедура Delete - удаляет из строки подстроку.

Процедура Insert - добавляет в строку подстроку.

Функция Length - возвращает динамическую длину строки.

Функция Pos - производит поиск подстроки в строке.

Процедура Str - преобразует численное значение в его строковое предcтавление.

Процедура Val - преобразует строковое значение в его численное представление.

функции для работы с указателями и адресами


Addr - возвращает адрес заданного объекта.

CSeg - возвращает текущее значение регистра CS.

DSeg - возвращает текущее значение регистра BS.

Ofs - возвращает смещения для заданного объекта.

Ptr - преобразует адрес базового сегмента и смещение в значение типа указатель.

Seg - возвращает сегмент для заданного объекта.

SPtr - возвращает текущее значение регистра SP.

SSeg - возвращает текущее значение регистра SS.

Смешанные процедуры и функции


Процедура FillChar - заполняет заданное число следующих друг за другом битов указанным значением.

Функция Hi - возвращает старший байт аргумента.

Функция Lo - возвращает младший байт аргумента.

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

Функция ParaMCount - возвращает число параметров, пере­данное программе в командной строке.

Функция RandoM - возвращает случайное число.

Процедура PandoMize - инициализирует встроенный генера­тор случайных чисел случайным значением.

Функция SizeOff - возвращает число байтов, заданных ар­гументом.

Функция Swap - производит перестановку старших и млад­ших битов

аргумента.

Функция Upcase - преобразует символ в прописной.


Введение 1

I. Представление информации.
Системы счисления. 2


I.1. Теоретическое введение. 2

I.2. Задачи  уровня 4

I.3. Задачи  уровня. 4

I.4. Задачи  уровня. 4

I.5. Контрольные работы 5

I.6. Вопросы для самопроверки. 5

II. Элементы математической логики 6

II.1. Теоретическое введение 6

II.2. Логические высказывания 6

II.3. Основные законы математической логики 7

II.4. Основные понятия математической логики 8

II.5. Задачи  уровня 8

II.6. Задачи  уровня 9

II.7. Задачи  уровня 9

II.8. Контрольные работы 10

II.9. Вопросы для самопроверки 11

III. Алгоритмы и их свойства.
Понятие о структурном подходе
к разработке алгоритмов 12


III.1. Теоретическое введение. 12

III.2. Задачи  уровня 13

III.3. Задачи  уровня 14

III.4. Задачи  уровня 14

III.5. Контрольные работы 14

III.6. Вопросы для самопроверки 15

IV. Введение в алгоритмические языки
BASIC и PASCAL 15


IV.1. Теоретическое введение. 15

IV.2. Бейсик (BASIC). 16

IV.3. Паскаль (PASCAL) 18

V. Операторы линейной структуры 21

V.1. Бейсик 21

V.2. Паскаль 24

V.3. Задачи  уровня 26

V.4. Задачи  уровня 26

V.5. Задачи  уровня 26

V.6. Контрольные работы 26

VI. Условные операторы 27

VI.1. Бейсик 28

VI.2. Паскаль 28

VI.3. Задачи  уровня 29

VI.4. Задачи  уровня 29

VI.5. Задачи  уровня 30

VI.6. Контрольные работы 31

VI.7. Вопросы для самопроверки 33

VII. Операторы цикла 33

VII.1. Бейсик 33

VII.2. Паскаль 34

VII.3. Задачи  уровня. 36

VII.4. Задачи  уровня 37

VII.5. Задачи  уровня 37

VII.6. Контрольные работы 38

VII.7. Вопросы для самопроверки 39

VIII. Операции и стандартные функции
для символьных переменных 39


VIII.1. Задачи  уровня. 40

VIII.2. Задачи  уровня 40

VIII.3. Задачи  уровня 41

VIII.4. Контрольные работы 41

VIII.5. Вопросы для самопроверки 42

IX. Простейшие алгоритмы обработки
одномерных массивов 42


IX.1. Бейсик 42

IX.2. Паскаль 43

IX.3. Задачи  уровня 43

IX.4. Задачи  уровня 43

IX.5. Задачи  уровня 44

IX.6. Контрольные работы 45

IX.7. Вопросы для самопроверки 45

X. Простейшие алгоритмы обработки
двумерных массивов 46


X.1. Бейсик 46

X.2. Паскаль 46

X.3. Задачи  уровня 47

X.4. Задачи  уровня 48

X.5. Задачи  уровня 48

X.6. Контрольные работы 49

X.7. Вопросы для самопроверки 50

XI. Использование подпрограмм и функций 51

XI.1. Бейсик 51

XI.2. Паскаль 52

XI.3. Задачи  уровня 54

XI.4. Задачи  уровня 54

XI.5. Задачи  уровня 54

XI.6. Контрольные работы 55

XII. Создание программы в Turbo Паскале 56

XII.1. Запись программы на диск 56

XII.2. Компиляция программы 56

XII.3. Что же такое компилятор? 57

XII.4. Выполнение программы 57

XII.5. Что такое модуль? 58

XII.6. Структура модуля 58

XII.7. Как используются модули? 60

XII.8. Компиляция модуля 64

XIII. Стандартные процедуры и функции Паскаль 66