ВУЗ:
Составители:
Рубрика:
5
1. Б ИБЛИОТЕКИ ПОДПРОГРАМ М
Этот параграф описывает процесс разработки библиотек подпро-
грамм и является вспомогательным. Построенная в нем библиотека бу-
дет использована в следующем параграфе для создания класса, имеющ е-
го анал огичную функциональность.
Задача 1.1. Требуется разработать библиотеку процедур и функ-
ций, манипулирующих целочисленными векторами фиксированной раз -
мерности n. Библиотека должна содержать подпрограммы, выполняю-
щие следующие действия:
1) вычисление суммы двух векторов ,
2) вычисление разности двух векторов ,
3) вычисление скалярного произведения двух векторов ,
4) прибавление одного вектора к другому,
5) вычитание одного вектора из другого,
6) присваивание одного вектора другому,
7) сравнение двух векторов на равенство,
8) вычисление длины вектора (как элемента n-мерного евклидова
пространства),
9) преобразование вектора в строковую форму для вывода на экран
или в файл .
Библиотеку следует оформить в виде модуля. Требуется также
создать программу, использующую данный модуль и демонстрирующую
работу его открытых под программ.
Схема решения.
1. Объявление новых типов данных и констант, которые будут ис -
пол ь зоваться подпрограммами библиотеки.
2. Объявление подпрограмм, т. е. определение их имен, списков п а -
раметров и типов возвращаемых значений.
3. Реализация подпрограмм.
4. Размещение написанного кода внутри модуля.
5. Создание программы, демонстрирующей работу открытых про-
цедур и функций библиотеки.
Решение. 1. Прежде всего необходимо определиться с типом
данных, кот орый будет использоваться для представления векторов .
Очевидно, что простые типы языка Object Pascal для этой цели не под -
ходят уже хотя бы потому, что занимают фиксированный объем памяти.
1. Б И Б Л И О Т Е К И ПО Д ПРО Г РА М М
Э тот параграф опис ы в ает проц ес с раз работ ки библ иот ек под про-
грам м и яв л яет с я в с пом огат ел ь ны м . Пос т роенная в нем библ иот ека бу-
д ет ис пол ь з ов ана в с л ед ующ ем параграфе д л я с оз д ания кл ас с а, им еющ е-
гоанал огичную функц ионал ь нос т ь .
Задача 1.1. Требует с я раз работ ат ь библ иот еку проц ед ур и функ-
ц ий, м анипул ирующ их ц ел очис л енны м и в екторам и фикс иров анной раз -
м ернос т и n. Библ иот ека д ол жна с од ержат ь под програм м ы , в ы пол няю-
щ ие с л ед ующ ие д ейс т в ия:
1) в ы чис л ение с ум м ы д в ух в екторов ,
2) в ы чис л ение раз нос т и д в ух в екторов ,
3) в ы чис л ение с кал ярногопроиз в ед ения д в ух в екторов ,
4) прибав л ение од ногов ектора к д ругом у,
5) в ы чит ание од ногов ектора из д ругого,
6) прис в аив ание од ногов ектора д ругом у,
7) с рав нение д в ух в екторов на рав енс т в о,
8) в ы чис л ение д л ины в ектора (как эл ем ент а n-м ерного ев кл ид ов а
прос т ранс т в а),
9) преобраз ов ание в ектора в с т роков ую форм у д л я в ы в од а на экран
ил и в файл .
Библ иот еку с л ед ует оформ ит ь в в ид е м од ул я. Требует с я т акже
с оз д ат ь програм м у, ис пол ь з ующ ую д анны й м од ул ь и д ем онс т рирующ ую
работ у егоот кры т ы х под програм м .
Схема реш ения.
1. О бъяв л ение нов ы х т ипов д анны х и конс т ант, которы е буд ут ис -
пол ь з ов ат ь с я под програм м ам и библ иот еки.
2. О бъяв л ение под програм м , т. е. опред ел ение их им ен, с пис ков па-
рам ет ров и т ипов в оз в ращ аем ы х з начений.
3. Реал из ац ия под програм м .
4. Раз м ещ ение напис анногокод а в нут ри м од ул я.
5. С оз д ание програм м ы , д ем онс т рирующ ей работ у от кры т ы х про-
ц ед ур и функц ий библ иот еки.
Реш ение. 1. Прежд е в с его необход им о опред ел ит ь с я с т ипом
д анны х, которы й буд ет ис пол ь з ов ат ь с я д л я пред с т ав л ения в екторов .
О чев ид но, чтопрос т ы е т ипы яз ы ка Object Pascal д л я этой ц ел и не под -
ход ят уже хотя бы потом у, чтоз аним ают фикс иров анны й объем пам ят и.
5
Страницы
- « первая
- ‹ предыдущая
- …
- 3
- 4
- 5
- 6
- 7
- …
- следующая ›
- последняя »
