Арифметические операции над комплексными числами 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Арифметические операции над комплексными числами



Program primer;
Uses complexn;
Var
a,b,c: coplex;
begin
a.re:= 1; a.im:= 1;
b.re:= 1; b.im:= 2;
AddC(a, b, c);
Writeln (‘ сложение:’, c.re: 5:1, c.im: 5:1, ‘i’);
SubC (a, b, c);
Writeln (‘ вычитание:’, c.re: 5:1, c.im: 5:1, ‘i’);
End.

После объявления Uses complexn программе стали доступны все объекты, объявленные в интерфейсной части модуля complexn. При необходимости можно переопределить любой из этих объектов, как произошло, например, с типизированной константой c, объявленной в модуле Паскаля. Переопределение объекта означает, что вновь объявленный объект «закрывает» ранее определенный в модуле одноименный объект. Чтобы получить доступ к «закрытому» объекту, нужно воспользоваться составным именем: перед именем объекта поставить имя модуля и точку. Например:

Writeln (complexn.c.re: 5: 1, complexn.c.im: 5: 1);

Этот оператор выведет на экран содержимое «закрытой» типизированной константы, объявленной в модуле Паскаля из предыдущего примера.

Стандартные модули Паскаля

В Турбо Паскале имеется 8 стандартных модулей, в которых содержится множество различных типов, констант, процедур и функций. Этими модулями являются SYSTEM, DOS, CRT, GRAPH, OVERLAY, TURBO3, GRAPH3. Модули Паскаля GRAPH, TURBO 3, GRAPH 3 выделены в отдельные TPU -файлы, а остальные входят в состав библиотечного файла TURBO. TPL. Лишь один модуль Паскаля SYSTEM подключается к любой программе автоматически, все остальные становятся доступны только после указания их имен в списке подключаемых модулей.

Модуль Паскаля SYSTEM. В него входят все процедуры и функции стандартного Паскаля, а также встроенные процедуры и функции, которые не вошли в другие стандартные модули (например, INC, DEC, GETDIR и т.п.). Модуль Паскаля SYSTEM подключается к любой программе независимо от того, объявлен ли он в предложении USES или нет, поэтому его глобальные константы, переменные, процедуры и функции считаются встроенными в Турбо Паскаль.

Модуль Паскаля PRINTER делает доступным вывод текстов на матричный принтер. В нем определяется файловая переменная LST типа TEXT, которая связывается с логическим устройством PRN. После подключения данного модуля Паскаля можно выполнить, например, такое действие:

Пример стандартного модуля Паскаля

Uses printer;
Begin
Writeln(lst, ‘ Турбо Паскаль ’);
End.

Модуль Паскаля CRT. В нем сосредоточены процедуры и функции, обеспечивающие управление текстовым режимом работы экрана. С его помощью можно перемещать курсор в любую точку экрана, менять цвет выводимых символов и фона, создавать окна. Кроме того, в данный модуль включены также процедуры «слепого» чтения клавиатуры и управления звуком.

Модуль Паскаля GRAPH. Содержит набор типов, констант, процедур и функций для управления графическим режимом работы экрана. Этот модуль позволяет создавать различные графические изображения и выводить на экран надписи стандартными или созданными программистом шрифтами.

Модуль Паскаля DOS. В модуле собраны процедуры и функции, открывающие доступ к средствам дисковой операционной системы MS - DOS.

Модуль Паскаля OVERLAY. Данный модуль необходим при разработке громоздких программ с перекрытиями. Турбо Паскаль обеспечивает создание программ, длина которых ограничивается лишь основной оперативной памятью. Операционная система MS - DOS оставляет программе около 580 Кбайт основной памяти. Память такого размера достаточна для большинства исполняемых программ, тем не менее, использование программ с перекрытиями снимает это ограничение.

Модули Паскаля TURBO 3 и GRAPH 3 введены для обеспечения совместимости с ранней версией системы Турбо Паскаль.

 

МОДУЛЬ CRT. ПРОЦЕДУРЫ И ФУНКЦИИ МОДУЛЯ CRT.

Модуль Crt содержит константы, переменные и подпрограммы, предназначенные для работы с консолью. В отличие от стандартного ввода-вывода, когда он осуществляется через операционную систему, подпрограммы модуля Crt работают с BIOS, и даже непосредственно с видеопамятью.

При работе с экраном через модуль Crt весь экран разбивается на отдельные строки, а каждая строка - на отдельные позиции, в каждую из которых можно поместить один символ (в том числе и пробел). Таким образом, весь экран разбивается на отдельные неделимые прямоугольные элементы. Для каждого элемента можно задать цвет фона (задний план) и цвет символа (передний план). Кроме того, в случае необходимости символ можно сделать мерцающим. Вся эта информация (атрибуты символа) размещается в одном байте информации так, как показано на рис. 3.

Рис. 3. Атрибуты элемента экрана

На этом рисунке буквой М обозначен бит мерцания (символ мерцает, если в этом бите установлена 1), буквами Ф - биты, в которые записывается код цвета фона (биты 4 - 6) и буквами С - биты, в которые помещается код цвета символа (биты 0-3).

Модуль Crt позволяет работать не только со всем экраном, но и выделять в нем прямоугольные окна. Любое окно задается своим левым верхним углом и правым нижним углом. Эти углы, так же как и положение любого объекта на экране, задаются двумя координатами: X и Y. В качестве координаты X выступает номер позиции в строке (нумерация начинается с 1 и идет слева направо), а в качестве координаты Y - номер строки (нумерация начинается с 1 и идет сверху вниз). При работе в окне координаты отсчитываются от левого верхнего угла окна. При запуске программы выделенное окно совпадает по размеру со всем экраном. Если режим работы адаптера - 25 строк по 80 позиций, то координаты такого окна - (1,1) и (80,25).

Список констант модуля приведен в табл. 13.

Таблица 13. Константы модуля Crt

Имя Значение Назначение
Коды режимов для процедуры TextMode
BW40 BW80 СО40 СО80 Font8x8 Mono С40 С80 0 2 1 3 256 7 СО40 СО80 40x25 ч/б для цветного адаптера 80x25 ч/б для цветного адаптера 40x25 цветной для цветного адаптера 80x25 цветной для цветного адаптера EGA/VGA 43 и 50 строк 80x25 для монохромного адаптера Для совместимости с версией 3.0 Для совместимости с версией 3.0
Коды цветов
Black Blue Green Cyan Red Magenta Brown LightGray DarkGray LightBlue LightGreen LightCyan LightRed LightMagenta Yellow White Blink 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 128 Черный Синий Зеленый Голубой Красный Фиолетовый Коричневый Светло-серый Темно-серый Светло-синий Светло-зеленый Светло-голубой Розовый Светло-фиолетовый Желтый Белый Мерцание символа

Цвета с кодами от 0 до 7 включительно можно использовать как для символов, так и для фона. Остальные цвета и код мерцания можно использовать только для символов.

Перечень переменных модуля приведен в табл. 14.

Таблица 14. Переменные модуля Crt

Имя Значение Назначение
CheckBreak CheckEof CheckSnow DirectVideo LastMode TextAttr WindMin WindMax Boolean Boolean Boolean Boolean Word Byte Word Word Разрешение анализа Ctrl+Break Разрешение помещения признака конца файла Разрешение подавления "снега" Разрешение прямой адресации видеопамяти Текущий текстовый режим Текущие атрибуты текста Координаты левого верхнего угла окна Координаты правого нижнего угла окна

Переменная CheckBreak управляет реакцией программы на комбинацию клавиш Ctrl+Break. Если эта переменная равна True, комбинация Ctrl+Break вызывает прекращение работы программы, в противном случае никакой реакции на эту комбинацию не происходит. Переменная CheckEof управляет размещением признака конца файла. Если эта переменная равна True, комбинация клавиш Ctrl+Z помещает в файл признак конца файла, в противном случае эта комбинация не оказывает никакого действия. Переменная CheckSnow разрешает (если равна True) или запрещает (в случае False) подавление "снега" на экране для видеоа- даптеров CGA. Переменная DirectVideo позволяет или запрещает непосредственную запись информации процедурами Write и WriteLn в видеопамять (в случае True - прямая запись в видеопамять, в случае False - запись через BIOS). В переменной LastMode помещается значение текущего текстового, режима, установленное процедурой TextMode (см. табл. 13). Переменная TextAttr содержит установленные атрибуты (цвета фона и символов) текста. В переменных WindMin и WindMax находятся координаты левого верхнего и правого нижнего углов окна. В каждой из этих переменных младший байт содержит Х-координату, а старший - Y-координату.

Таблица 15. Процедуры и функции модуля Crt

Имя Назначение
Процедуры задания режимов работы
TextMode Задание текстового режима
Процедуры управления цветом
High Video LowVideo Norm Video TextBackground TextColor Задание высокой яркости символов Задание малой яркости символов Задание исходной яркости символов Задание цвета фона Задание цвета символов
Процедуры работы с экраном
ClrEol ClrScr DelLine GotoXY InsLine Window Удаление символов от курсора до конца строки Очистка экрана Удаление строки, в которой находится курсор Перемещение курсора в заданную позицию Добавление пустой строки на экране Задание размеров окна
Функции работы с экраном
WhereX WhereY Текущая координата X курсора Текущая координата Y курсора
Функции работы с клавиатурой
KeyPressed ReadKey Проверка нажатия клавиши Чтение символа с клавиатуры
Процедуры управления звуком
Sound NoSound Включение звука Отключение звука
Процедуры разнообразного назначения
Delay AssignCrt Задержка выполнения программы Связь текстового файла с устройством CRT

Далее дается в алфавитном порядке краткое описание сначала процедур, а затем функций модуля.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 132; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 35.175.174.36 (0.007 с.)