Главная > Алгоритмы машинной графики и обработки изображений
НАПИШУ ВСЁ ЧТО ЗАДАЛИ
СЕКРЕТНЫЙ БОТ В ТЕЛЕГЕ
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

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

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO

1.11. СИСТЕМА ЗАПИСИ АЛГОРИТМОВ

В нашей книге алгоритмы приводятся в алголоподобной записи с учетом следующих соглашений: ключевые слова печатаются жирным шрифтом, переменные — курсивом, а весь остальной текст алгоритма — прямым светлым шрифтом. В круглые скобки заключаются индексы массивов, а также аргументы функций и процедур. В фигурные скобки заключаются комментарии. Запись является обозначением всех элементов столбца двухмерного массива Реализация приводимых алгоритмов на Алголе, ПЛ/1, Паскале и языках Си и Ратфор не должна вызывать затруднений. Несколько сложнее может оказаться их реализация на Фортране, тем не менее мы полагаем, что в 80-х годах

большинство людей владеет тем или иным языком программирования или знает, каким образом структурированные алгоритмы записываются на Фортране.

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

(см. скан)

Операторную конструкцию 1 можно реализовать либо посредством цикла если известно число строк, либо посредством Цикла в котором проверяется окончание файла. Операторная

конструкция 2 очевидна, а операторную конструкцию 3 можно реализовать посредством цикла for/do, или while, если конец строки отмечается нуль-символом. В большинстве языков операторная конструкция 4 будет иметь видр (I) — причем в Фортране для ее реализации может потребоваться два шага. И, наконец, реализация операторной конструкции 5 предполагает, что символы управления кареткой известны. В языке ПЛ/1 следует опускать команду а в Фортране, при использовании форматированного вывода, первым символом должен быть Приведенный алгоритм основан на предположении о равенстве числа столбцов матрицы С числу допустимых шкал полутонов. Если это допущение оказывается неверным, то необходимо предусмотреть соответствующие процедуры проверки индексов. Мы не будем включать в алгоритмы подобные процедуры, поскольку рассматриваем их просто в качестве приемов программирования, позволяющих получать хорошие программы (см. например, [1.3]). В данном случае может оказаться целесообразным воспользоваться несколько более сложным отображением связывающим уровни полутонов и столбцы матрицы С; в результате в операторную конструкцию шага 4 придется ввести запись С Выбор такого отображения рассматривается в разд. 3.2. Более эффективным способом является расширение исходной матрицы С таким образом, чтобы ее размерность соответствовала числу допустимых уровней полутонов. Однако, описывая алгоритмы, мы таких проблем затрагивать не будем, поскольку они относятся к качеству и стилю программирования.

Если читатель захочет реализовать алгоритм 1.1, он может воспользоваться приведенной здесь таблицей значений матрицы С. Она была предложена Хендерсоном и Танимото [1.2]; тот, кто хочет попытаться реализовать данный алгоритм на ассемблере, найдет в их статье интересную для себя информацию.

1
Оглавление
email@scask.ru