![]() ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Модули Паскаля(Pascal). Модуль Graph в ПаскалеМодуль не представляет собой исполняемой программы, а только содержит набор средств для использования в исполняемой программе: типы данных, переменные, процедуры и функции. Исходный текст модуля имеет расширение.pas. Модуль компилируется отдельно от основной программы, откомпилированный модуль имеет расширение.tpu (Turbo Pascal Unit). Готовый откомпилированный модуль может быть использован в основной программе с помощью предложения uses, которое записывается сразуже после имени программы. В Турбо Паскале имеются стандартные модули: DOS, CRT (Cathode Ray Tube, электронно-лучевая трубка), Printer, Graph, System и другие. Их не надо описывать, а можно сразу включать в программу предложением uses. Модуль System используется во всех программах, поэтому для него сделано исключение, его можно не включать в предложение uses, он будет подключен автоматически. Остальные модули требуют включения в предложение uses, если в программе используются ресурсы модуля, например, процедуры и функции. Структура модулей Модуль имеет следующую структуру: Здесь: Таким образом, модуль состоит из заголовка и трех составных частей, любая из которых может быть пустой. Интерфейсная часть открывается кодовым словом Interface. В этой части содержатся объявления всех глобальных объектов модуля (типов, констант, переменных и подпрограмм), которые должны стать доступными основной программе и/или другим модулям. Следует учесть, что все константы и переменные, объявленные в интерфейсной части модуля, равно как и глобальные объекты основной программы, помещаются компилятором Турбо-Паскаля в обилии сегмент данных (максимальная длина сегмента 65521 байт). Порядок появления различных разделов объявлений и их количество могут быть произвольными. В интерфейсной части модулей нельзя использовать опережающее описание.
Исполняемая часть Исполняемая часть начинается кодовым словом Implementation и содержит тела процедур и функций, объявленных в интерфейсной части. В этой части могут также объявляться локальные для модуля объекты: вспомогательные типы, константы, переменные и блоки, а также метки, если они используются в инициирующей части. Ранее объявленные в интерфейсной части глобальные процедуры и функции должны описываться в той же последовательности, в какой появляются их заголовки в интерфейсной части. Описанию глобального блока в исполняемой части должен предшествовать заголовок, в котором разрешается опускать список формальных переменных (и тип результата для функции), так как они уже описаны в интерфейсной части. Но если заголовок блока приводится в полном виде, т.е. со списком формальных параметров и объявлением результата, он должен совпадать с заголовком, объявленным в интерфейсной части. Локальные переменные и константы, а также все программные коды, порожденные при компиляции модуля, помещаются в общий сегмент памяти.
Компиляция модулей В среде Турбо-Паскаля имеются средства, управляющие способами компиляции модулей и облегчающие разработку крупных программных проектов. В частности, определены три режима компиляции: Compile, Make и Build, Режимы отличаются только способом связи компилируемого модуля или компилируемой основной программы с другими модулями, объявленными в предложении Uses. При компиляции модуля или основной программы в режиме Compile все упоминающиеся в предложении Uses модули должны быть предварительно откомпилированы и результаты их компиляции должны быть помещены в одноименные файлы с расширением.TPU. Например, если в программе (в модуле) имеется предложение Uses Global, то на диске в каталоге, объявленном опцией Unit directories, уже должен находиться файл GLOBAL.TPU. Файл с расширением.TPU (от англ. Turbo-Pascal Unit) создается в результате компиляции модуля. В режиме MAKE компилятор проверяет наличие TPU-файлов для каждого объявленного модуля. Если какой-либо из файлов не обнаружен, система пытается отыскать одноименный файл с расширением.PAS, т.е. файл с исходным текстом модуля, и, если PAS- файл найден, приступает к его компиляции. Кроме того, в этом случае система следит за возможными изменениями исходного текста любого используемого модуля. Если внесены какие-либо изменения в PAS-файл (исходный текст модуля), то независимо от того, есть ли уже в каталоге соответствующий TPU-файл или нет, система осуществляет его компиляцию перед компиляцией основной программы. Более того, если изменения внесены в интерфейсную часгь модуля, то будут перекомпилированы также и все другие модули, обращающиеся к нему. Режим Make, таким образом, существенно облегчает процесс разработки крупных программ с множеством модулей: программист избавляется от необходимости следить за соответствием существующих TPU-файлов и их исходного текста, так как система делает это автоматически. В режиме Build существующие TPU-файлы игнорируются, и система пытается отыскать (и компилировать) соответствующий PAS-файл для каждого объявленного в Uses модуля. После компиляции в режиме Build программист может быть уверен в том, что учтены все сделанные им изменения в любом из модулей. Подключение модулей к основной программе и их возможная компиляция осуществляется в порядке их объявления в предложении Uses. При переходе к очередному модулю система предварительно отыскивает все модули, на которые он ссылается. Ссылки модулей друг на друга могут образовывать древовидную структуру любой сложности, однако запрещается явное или косвенное обращение модуля к самому себе. 6 вопрос Модуль CRT представляет собой библиотеку процедур и описаний, которая расширяет возможности пользователя при работе с текстом, текстовым экраном и клавиатурой. Рассмотрим некоторые из них. 1). TextMode(режим: integer) - выбирает указанный текстовый режим Режимы CRT: 2).TextBackground (цвет: byte) - Выбирает фоновый цвет. Параметр "цвет" представляет собой выражение целого типа, например:
3). ClrScr - Очистка экрана. Все позиции символов заполняются пробелами. При этом используются текущий фоновый цвет, заданный в процедуре TextBackGround. 4). TextColor (цвет:byte) - Устанавливает цвет символов. { константы для установки цвета}
5). Window(x1,y1,x2,y2) - Определяет на экране текстовое окно. Параметры x1,y1 представляют собой координаты верхнего левого угла окна, параметры x2,y2 - координаты правого нижнего угла.Минимальный размер один столбец на одну строку. Максимальный - Х=80, У=25.Если координаты являются недопустимыми, то обращение к процедуре Window игнорируется. По умолчанию задается окно на весь экран. 6).GoToXY(x,y: byte) - Позиционирует курсор. Курсор перемещается в ту позицию внутри текущего окна, которая задана координатами x и y (x - задает столбец, y - задает строку).Верхний левый угол задается координатами (1,1) пример: Window(1,10,60,20); GoToXY(1,1); Это приведет к тому, что курсор уйдет в точку с абсолютными координатами (1,10). 7).WhereX и WhereY возвращают для текущей позиции курсора относительно текущего окна координаты X и Y соответственно. Тип результата Byte. 8).Delay(мсек: word) - Выполняет задержку на заданное число миллисекунд. Параметр "мсек" задает число миллисекунд интервала ожидания. Но данная процедура является приблизительной, поэтому период задержки не будет точно равнятся заданному числу миллисекунд. 9).READKey - Считывает символ с клавиатуры. 10).Sound - является процедурой включающей внутренний динамик; Описание: Sound(герц: word); где параметр "герц" задает частоту генерируемого сигнала в герцах.Звук будет звучать до тех пор пока не будет выключен посредством обращения к процедуре NoSound; 11).NoSound - Выключает внутренний динамик. Пример использования Sound,Delay,NoSound uses Crt; begin Sound(220); { включить звук } Delay(300); { ждать 300 ms } NoSound; { выключить звук } end.
7 вопрос. Модуль Graph ТР обладает достаточно разнообразными средствами для работы со стандартным VGA экраном. VGA адаптер имеет разрешение 640х480 пиксел (точка (0,0) в левом верхнем углу экрана), 16 цветов. Перед началом работы с графикой необходимо ее инициализировать, а по окончании - "закрыть". Все графические процедуры и функции находятся в модуле Graph, поэтому также необходимо его подключение.
Общая структура графической программы: Uses crt, graph; Путь c:\bp\bgi указывает расположение файла egavga.bgi (драйвер графического адаптера). На разный компьютерах этот путь может быть разным. Если файл egavga.bgi поместить в каталог с программой, то путь можно не указывать. Основные графические процедуры и функции: Построение фигур PutPixel(x,y,c) Line(x1,y1,x2,y2) Rectangle(x1,y1,x2,y2) Bar(x1,y1,x2,y2) Circle(x,y,r) Ellipse(x,y,ba,ea,xr,yr) FillEllipse(x,y,xr,yr)
Не нашли, что искали? Воспользуйтесь поиском:
|