Использование указателей для обработки массивов — КиберПедия 

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Использование указателей для обработки массивов

2019-12-21 148
Использование указателей для обработки массивов 0.00 из 5.00 0 оценок
Заказать работу

Продемонстрируем работу указателей на примере обработки одномерного массива: умножим все элементы массива на число.

Program Demo_ukaz;

Type

mas= array [1..7000] of Integer;

Var

A:^mas; {указатель для работы с массивом}

c:^Integer; {указатель для работы с числом}

i,n:Integer;

Begin

Write('Размерность массива n=');

ReadLn (n);

New(A); {выделили память для массива}

New(c); {выделили память для числа}

Write('Введите число c=');

ReadLn (c^);

WriteLn('Введите элементы вектора А:');

For i:=1 to n do

ReadLn(A^[i]);

WriteLn ('Вектор А:');

For i:=1 to n do

Write(A^[i]:3);

WriteLn;

WriteLn ('Вектор cА:');

For i:=1 to n do

Write(A^[i]*c^:3);

Dispose(A); {освобождаем память}

Dispose(c);

End.

Лекция 9.  Модули. Виды модулей (1 час)

План

9.1 Структура модуля

9.2 Стандартные модули

Структура модуля

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

Модуль в Pascal представляет собой отдельно хранимую и независимо компилируемую программную единицу. В общем случае модуль – это совокупность программных ресурсов, предназначенных для использования другими программами. Под программными ресурсами понимаются любые элементы языка Pascal: константы, типы, переменные, подпрограммы. Модуль сам по себе не является выполняемой программой, его элементы используются другими программными единицами.

Все программные элементы модуля можно разбить на две части:

1) программные элементы, предназначенные для использования другими программами или модулями, такие элементы называют видимыми вне модуля;

2) программные элементы, необходимые только для работы самого модуля, их называют невидимыми (или скрытыми).

В соответствии с этим модуль, кроме заголовка, содержит три основные части, называемыми интерфейсной, исполнимой и инициализируемой.

В общем случае модуль имеет следующую структуру:

unit <имя модуля>; {заголовок модуля}

interface

{описание видимых программных элементов модуля}

implementation

{описание скрытых программных элементов модуля}

begin

{операторы инициализации элементов модуля}

end.

В частном случае модуль может не содержать части реализации и части инициализации, тогда структура модуля будет такой:

unit <имя модуля>; {заголовок модуля}

interface

{описание видимых программных элементов модуля}

implementation

end.

Использование в модулях процедур и функций имеет свои особенности. Заголовок подпрограммы содержит все сведения, необходимые для ее вызова: имя, перечень и тип параметров, тип результата для функций. Эта информация должна быть доступна для других программ и модулей. С другой стороны, текст подпрограммы, реализующий ее алгоритм, другими программами и модулями не может быть использован. Поэтому заголовки процедур и функций помещают в интерфейсную часть модуля, а текст – в часть реализации.

Интерфейсная часть модуля содержит только видимые (доступные для других программ и модулей) заголовки процедур и функций (без служебного слова forward). Полный текст процедуры или функции помещают в часть реализации, причем заголовок может не содержать списка формальных параметров.

Исходный текст модуля должен быть откомпилирован с помощью директивы Make подменю Compile и записан на диск. Результатом компиляции модуля является файл с расширением. TPU (Turbo Pascal Unit). Основное имя модуля берется из заголовка модуля.

Для подключения модуля к программе необходимо указать его имя в разделе описания модулей, например:

uses Crt, Graph;

В том случае, если имена переменных в интерфейсной части модуля и в программе, использующей этот модуль, совпадают, обращение будет происходить к переменной, описанной в программе. Для обращения к переменной, описанной в модуле, необходимо применить составное имя, состоящее из имени модуля и имени переменной, разделенных точкой. Использование составных имен применяется не только к именам переменных, а ко всем именам, описанным в интерфейсной части модуля.

Рекурсивное использование модулей запрещено.

Если в модуле имеется раздел инициализации, то операторы из этого раздела будут выполнены перед началом выполнения программы, в которой используется этот модуль.

 

Стандартные модули

Перечислим, какие бывают виды модулей.

1. Модуль SYSTEM.

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

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

2. Модуль DOS.

Модуль Dos реализует многочисленные процедуры и функции Pascal, которые эквивалентны наиболее часто используемым вызовам DOS, как, например, GetTime, SetTime, DiskSize и так далее.

3. Модуль CRT.

Модуль CRT реализует ряд мощных программ, предоставляющих полную возможность управления средствами компьютера PC, такими, как управление режимом экрана, расширенные коды клавиатуры, цвета, окна и звуковые сигналы. Модуль CRT может использоваться только в программах, работающих на персональных компьютерах IBM PC, PC AT, PS/2 фирмы IBM и полностью совместимых с ними.

Одним из основных преимуществ использования модуля CRT является большая скорость и гибкость при выполнении операций работы с экраном. Программы, не работающие с модулем CRT, выводят на экран информацию с помощью средств операционной системы DOS, что связано с дополнительными непроизводительными затратами. При использовании модуля CRT выводимая информация посылается непосредственно в базовую систему ввода-вывода (BIOS) или для еще более быстрых операций непосредственно в видеопамять.

4. Модуль GRAPH.

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

5. Модуль OVERLAY.

Модуль OVERLAY позволяет уменьшить требования к памяти программы DOS реального режима. Фактически можно писать программы, превышающие общий объем доступной памяти, поскольку в каждый момент в памяти будет находиться только часть программы.

Лекция 10. Алгоритмы обработки структуры данных (3 часа)

План

10.1 Типовые алгоритмы обработки массивов

Типовые алгоритмы можно подразделить на алгоритмы обработки массивов, алгоритмы поиска и алгоритмы сортировки.

Типовые алгоритмы обработки массивов:


Поделиться с друзьями:

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

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

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.