Библиотека Рефераты Курсовые Дипломы Поиск
Библиотека Рефераты Курсовые Дипломы Поиск
сделать стартовой добавить в избранное
Кефирный гриб на сайте za4eti.ru

Компьютеры, Программирование Компьютеры, Программирование     Программирование, Базы данных Программирование, Базы данных

Разработка программы на языке LISP для построения кривых Серпинского i-го порядка

Коврик для запекания, силиконовый "Пекарь".
Коврик "Пекарь", сделанный из силикона, поможет Вам готовить вкусную и красивую выпечку. Благодаря материалу коврика, выпечка не
202 руб
Раздел: Коврики силиконовые для выпечки
Браслет светоотражающий, самофиксирующийся, желтый.
Изготовлены из влагостойкого и грязестойкого материала, сохраняющего свои свойства в любых погодных условиях. Легкость крепления позволяет
66 руб
Раздел: Прочее
Фонарь садовый «Тюльпан».
Дачные фонари на солнечных батареях были сделаны с использованием технологии аккумулирования солнечной энергии. Уличные светильники для
106 руб
Раздел: Уличное освещение

МИНИСТЕРСТВО ВЫСШЕГО И СРЕДНЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ РФ МОСКОВСКИЙ ИНСТИТУТ РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ Курсовой проект Тема: «Разработка программы на языке LISP для построения кривых Серпинского i-го порядка» Факультет: ВАВТ Дисциплина: ФПО Студент: Группа: Специальность: 2202 Преподаватель: Яшин Л.З. МОСКВА Май 1998 ОглавлениеЗадание 3 Формализация задачи 4 Схема алгоритма 6 Текст программы 8 Руководство пользователя 11 Тест программы 12 Литература 14 Задание Оригинальный узор на рисунке 1 состоит из суперпозиции четырех кривых. Эти кривые соответствуют некоторому регулярному образу. Алгоритм для построения этих кривых на экране монитора или на графопостроителе под управлением вычислительной машины описан в . Задача проекта – реализовать этот алгоритм в виде программы на функциональном языке программирования Lisp. Рисунок 1 Формализация задачи Анализируя рисунок 1, можно обнаружить, что он получен путем наложения друг на друга нескольких кривых. Первые две из них показаны на рисунке 2. Кривая Si называется кривой Серпинского i-го порядка. Необходимо выяснить, какова рекурсивная схема этих кривых. Рисунок 2 Главная особенность кривой Серпинского состоит в том, что она замкнута и в ней нет пересечений. Это означает, что основная рекурсивная схема должна давать разомкнутую кривую линию, четыре части которой соединяются линиями, не принадлежащими самому рекурсивному образу. И действительно, эти замыкающие линии представляют собой отрезки прямых в четырех внешних углах, на рисунке 2 они выделены жирными линиями. Можно считать, что они принадлежат к непустой начальной кривой S – квадрату, «стоящему» на одном углу. Теперь достаточно легко составить рекурсивную схему. Четыре составляющих образа, для наглядности, обозначим через A, B, C, D, а процедуры, рисующие соединительные прямые, будем обозначать стрелками, указывающими соответствующем направлении. Надо отметить, что четыре рекурсивных образа по существу идентичны, но лишь повертываются на 90(. Основной образ кривых Серпинского задается схемой: S: A ( B ( C ( D ( а рекурсивные составляющие (горизонтальные и вертикальные отрезки – двойной длины): A: A ( B ( D ( A B: B ( C ( A ( B C: C ( D ( B ( C D: D ( A ( C ( D Предположим, что для построения части прямой в нашем распоряжении есть процедура Li e, передвигающая перо в заданном направлении на заданное расстояние, причем направление задается целочисленным параметром i, как градусов. Если единичную прямую обозначить через h, то с помощью рекурсивных обращений к аналогично составленным процедурам для B и D и к самой A довольно просто написать процедуру, соответствующую схеме А. ( defu A ( k ) ( co d ( ( > k 0 ) ( A ( - k 1 ) ) ( Li e 1 h ) ( B ( - k 1 ) ) ( Li e 0 ( 2 h ) ) ( D ( - k 1 ) ) ( Li e 7 h ) ( A ( - k 1 ) )))) Эта процедура инициируется главной программой по одному разу для каждой кривой Серпинского, образующих приведенный рисунок. Употребление явного параметра для уровня гарантирует окончание работы, так как глубина рекурсии не может быть больше k. Главная программа строится по образцу S. Ее задача - установить начальную точку кривой, т.е

. исходные координаты пера (Px и Py) и единичную длину приращения h. Квадрат, где рисуется кривая, помещается в середине экрана, заданной ширины и высоты. Графическое изображение полученного алгоритма представлено в следующем разделе (Рисунок 3). По сравнению с таким рекурсивным построением эквивалентные программы, где избегали употребления рекурсии, выглядят крайне сложными и запутанными. Схема алгоритма Рисунок 3 Схема алгоритма главной процедуры Текст программы ;; SIERPI S.LSP для XLISP версии 2.1 ;; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;; Программа построения кривых Серпинского i-го порядка. ;; ;; ЗАПУСК: > (Sierpi skiCurve 4) ;; ;; Замечание: Переменная VMode управляет установкой видео режима, ;; и по умолчанию установлена в значение 18. ;; Эта установка соответствует режиму 640x480 Color, ;; и работает на большинстве систем. В случае проблемы ;; с установкой этого режима необходимо выбрать ;; значение этой переменной в соответствии с документацией ;; на оборудование. ;;( defvar VMode 18 ) ;Видео режим по умолчанию ( defvar MaxX 640 ) ;Максимальная ширина экрана по умолчанию ( defvar MaxY 480 ) ;Максимальная высота экрана по умолчанию ( defvar SquareSize 256 ) ;Размер области для построения;; ;; Функция инициализирует графический режим, устанавливает переменные ;; MaxX MaxY SquareSize в соответствии с выбранным режимом ;; ( defu I i Graph() ( case VMode ( 4 ;320x200 Color ( mode 4 ) ( se q MaxX 320 MaxY 200 SquareSize 128 ) ) ( 16 ;640x350 Color ( mode 16 ) ( se q MaxX 640 MaxY 350 SquareSize 128 ) ) ( 18 ;640x480 Color ( mode 18 ) ) ( 106 ;800x600 Color ( mode 106 106 800 600 ) ( se q MaxX 800 MaxY 600 SquareSize 512 ) ) ( ( error U suppor ed graphics mode: VMode ) ) ) );; ;; Функция реализует задержку на заданное время ;; ( defu pause ( ime ) ( le ( ( fi ime ( ( ime i er al- ime-u i s-per-seco d ) ( ge -i er al-ru - ime ) ) ) ) ( loop ( whe ( > ( ge -i er al-ru - ime) fi ime ) ( re ur -from pause ) ) ) ) );; ;; Функция целочисленного деления ;; ( defu div ( a b ) ( rou d ( / a b ) ) );; ;; Функция рисования прямой: ;; Параметры: - направление рисования (0-7) ;; - длинна прямой ;; ( defu Li e( Direc io Size ) ( se q x Px y Py ) ( case Direc io ( 0 ( se q x ( x Size) ) ) ( 1 ( se q x ( x Size ) y ( - y Size ) ) ) ( 2 ( se q y ( - y Size) ) ) ( 3 ( se q x ( - x Size ) y ( - y Size ) ) ) ( 4 ( se q x ( - x Size) ) ) ( 5 ( se q x ( - x Size ) y ( y Size ) ) ) ( 6 ( se q y ( y Size) ) ) ( 7 ( se q x ( x Size ) y ( y Size ) ) ) ) ( move Px Py x y ) ( se q Px x Py y ) );; ;; Функции A, B, C, D - рекурсивные функции рисования ;; ( defu A ( k ) ( co d ( ( > k 0 ) ( A ( - k 1 ) ) ( Li e 1 h ) ( B ( - k 1 ) ) ( Li e 0 ( 2 h ) ) ( D ( - k 1 ) ) ( Li e 7 h ) ( A ( - k 1 ) ) ) ) )( defu B ( k ) ( co d ( ( > k 0 ) ( B ( - k 1 ) ) ( Li e 3 h ) ( C ( - k 1 ) ) ( Li e 2 ( 2 h ) ) ( A ( - k 1 ) ) ( Li e 1 h ) ( B ( - k 1 ) ) ) ) )( defu C ( k ) ( co d ( ( > k 0 ) ( C ( - k 1 ) ) ( Li e 5 h ) ( D ( - k 1 ) ) ( Li e 4 ( 2 h ) ) ( B ( - k 1 ) ) ( Li e 3 h ) ( C ( - k 1 ) ) ) ) )( defu D ( k ) ( co d ( ( > k 0 ) ( D ( - k 1 ) ) ( Li e 7 h ) ( A ( - k 1 ) ) ( Li e 6 ( 2 h ) ) ( C ( - k 1 ) ) ( Li e 5 h ) ( D ( - k 1 ) ) ) ) );; ;; Главная процедура ;; Параметры: - количество итераций ;; ( defu Sierpi skiCurve ( Cou ) ( I i Graph ) ;Установка графического режима ( se q h ( div SquareSize 4 ) ) ;Вычисление длины линии ( se q x0 ( div MaxX 2 ) ) ;Вычисление начальной точки ( se q y0 ( ( div MaxY 2 ) h ) ) ;для рисования ( ;Основной цикл do (( i 1 )) ;Инициализация счетчика (( eql i ( Cou 1 ) ) 'Do e ) ;Условие завершения ( se q x0 ( - x0 h ) ) ;Вычисление координат начальной ( se q h ( div h 2 ) ) ;точки для рисования и ( se q y0 ( y0 h ) ) ;единичной длины линии ( se q Px x0 Py y0 ) ;Установка пера ( color i ) ;Установка цвета для рисования ( A i ) ( Li e 1 h ) ;Рисование ( B i ) ( Li e 3 h ) ( C i ) ( Li e 5 h ) ( D i ) ( Li e 7 h ) ( pause 1.0

) ;Задержка ( se q i ( i 1 )) ;Инкримент счетчика ) ;Конец основного цикла )( pri ry (Sierpi skiCurve 4) ) ;Подсказка Руководство пользователя Требования к системе: V x86 персональный компьютер (386 минимум; 486, Pe ium, или Pe ium Pro рекомендуется) V Microsof DOS 3.30 или выше V Microsof Wi dows 3.1, Microsof Wi dows for Workgroups, Microsof Wi dows 95, Microsof Wi dows 3.51 или 4.0 V 512 Kb RAM V 5 Kb свободного пространства на жестком диске V Установленный интерпретатор XLisp версии 2.1 или выше Для запуска программы необходимо: o Включить компьютер o Загрузить интерпретатор XLisp c параметром «Sierpi s.lsp»: C:XLISPXLISP.EXE SIERPI S.LSP( o В ответ на приглашение XLisp ввести: (Sierpi skiCurve 4)( Тест программы Тест проводился на рабочей станции со следующей конфигурацией: o Pe ium 166 o 32 Mb RAM o Sy cMas er 17Glsi o S3 rio64V o Wi dows 95 Интерпретатор XLisp был запущен в окне MS-DOS. Программа тестировалась при значениях параметра Cou от 1 до 4. В результате тестов были получены следующие изображения на экране монитора Рисунок 7 Рисунок 8 Литература o “Алгоритм структура данных = программа”, H.Вирт o “XLisp-Plus 2.1 Programmers Ma ual”, David Michael Be z ----------------------- Схемы алгоритмов процедур B, C и D аналогичны A, и поэтому, в их изображении нет необходимости. Данный пример предполагает, что XLisp установлен в каталоге C:XLISP и его запуск производится в режиме MS-DOS. В программе был установлен графический видео режим с разрешением 640x480 256 Color

Немного сложнее получить полный компилятор C или Pascal, да мы и не будем. Но мы можем расчистить верхние уровни так, чтобы вы увидели как это делается. Давайте начнем. ВЕРХНИЙ УРОВЕНЬ Одна из самых больших ошибок людей при нисходящем проектировании заключается в неправильном выборе истинной вершины. Они думают, что знают какой должна быть общая структура проекта и поэтому они продолжаютPи записывают ее. Всякий раз, когда я начинаю новый проект, я всегда хочу сделать это в самом начале. На языке разработки программ (program design language PDL) этот верхний уровень походит на что-нибудь вроде: begin solve the problem end Конечно, я соглашусь с вами, что это не слишком большая подсказка о том, что расположено на следующем уровене, но я все равно запишу это просто для того, чтобыPпочувствовать, что я действительно начинаю с вершины. В нашем случае, общая функция компилятора заключается в компиляции законченной программы. С этого начинается любое определение языка, записанное в БНФ. На что походит верхний уровень БНФ? Хорошо, это немного зависит от транслируемого языка

1. Новый подход к построению методов межпроцедурного анализа программ

2. Построение формального языка L

3. Игровая программа TETRIS на языке Паскаль

4. Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа

5. Алгоритмический язык Pascal. Программа "Телефонный справочник"

6. Разработка программы при помощи языка низкого уровня ассемблер
7. Финансово-экономические программы. Российский рынок финансово-экономических программ
8. Разработка программы для построения кривых Серпинского i-го порядка

9. Практические задачи на вычисление эластичности, построения кривых спроса и предложения, оплата труда, издержки (Контрольная)

10. Построение многовариантных программ допросов

11. Построение программы ведения электронной документации кадрового отдела

12. Композиционное построение культурно-досуговых программ

13. Структуры экономического дискурса во французском языке. Роль коннекторов в построении аргументации

14. Обучающая программа "Графика" программированию в графическом режиме на языке turbo-pascal 7.x

15. Программа курса «Язык рекламы»

16. Программы вступительных экзаменов по иностранным языкам в 2004г (МГУ)

Копилка, 12,5 см.
Копилка поможет Вам наконец-то собрать требуемую сумму для покупки долгожданной вещицы.
586 руб
Раздел: Копилки
Дополнительный набор "Магнитные истории. В гостях у сказки".
Игра разработана художником и дизайнером Ольга Тихопой. В комплект входят четыре сказки и четыре комплекта сказочных героев. Настоящий
323 руб
Раздел: Магнитный театр
Мебель для кукол "Столовая Конфетти".
Столовая "Конфетти" - это игровой набор, состоящий из стола, четырех стульев, а также посуды: бокалов, тарелок, столовых
463 руб
Раздел: Кухни, столовые

17. Использование компьютерных программ в обучении иностранному языку

18. Программа на языке Паскаль, реализующая операции над множествами

19. Разработка компьютерной программы на языке Паскаль для проведения простого теплофизического расчета

20. Разработка программы на языке Borland Object Pascal (Ide Borland Delphi)

21. Решение математических задач с помощью алгоритмического языка Turbo Pascal, Microsoft Excel, пакета MathCAD и разработка программ в среде Delphi

22. Создание программы на языке Delphi 7.0
23. Составить программу на языке Turbo Pascal для параллельной сортировки чисел
24. Программа управления самолётом в режиме автопилота

25. Принцип построения налога на добавленную стоимость

26. Патентование избирательных программ в контексте формирования концептуального рынка

27. Политическая программа английского просвещения Джона Локка

28. Понятие, структура и методики построения страховых тарифов

29. Рецензия на программу "Тема" - "журналистская этика"

30. Кирилло-Мефодьевское братство: программа его деятельности

31. "Северное" и "Южное" общества декабристов, их программы. Восстание декабристов

32. Национальное самосознание - главный фактор в построении могущественной и процветающей России

Багетная рама "Isabelle" (золотой), 30х40 см.
Багетные рамы предназначены для оформления картин, вышивок и фотографий. Оформленное изделие всегда становится более выразительным и
651 руб
Раздел: Размер 30x40
Набор для черчения "College", 9 предметов.
В набор входит: циркуль 14 см с одной сгибаемой ножкой, циркуль - измеритель, удлинитель, кронциркуль, механический карандаш, контейнер с
539 руб
Раздел: Циркули, чертежные инструменты
Детский трехколесный велосипед Jaguar (цвет: синий).
Облегченный трехколесный велосипед с родительской ручкой, для малышей от 2 до 4 лет. Удобный, маневренный, отличная модель для получения
2500 руб
Раздел: Трехколесные

33. Антивирусные программы

34. Построение локальной вычислительной сети подразделения организации под управлением операционной системы WindowsNT

35. Построение сетевого графика

36. Проект учета пользовательских счетов для интернет-провайдеров на базе OS FreeBSD с применением программы "Billing ISP"

37. Построение verilog-модели ber-тестера для проверки каналов связи телекоммуникационных систем

38. Телекоммуникационные компьютерные сети: эволюция и основные принципы построения
39. Система научно-технического перевода (пример перевода программой PROMT Гигант)
40. Программа эмуляции развития популяций животных

41. Состав и функционирование ИС построенной по принципу "клиент-сервер" для численного обоснования решений

42. Анализ, оценка и выбор пользователем пакетов прикладных программ для автоматизации своей деятельности ([Курсовая])

43. Написание игровой программы Tetris и описание алгоритма

44. Защита программ от компьютерных вирусов

45. Построение информационной и даталогической моделей данных

46. Web-Дизайн и программы для создания web-страниц

47. Разработка программы- тренажера "Управление электросетями"

48. Построение функции предшествования по заданной КС-грамматике

Увлекательная настольная игра "Зверобуквы", новая версия.
В игровом наборе маленькие карточки-буквы и большие карты-звери. Иллюстраторы поработали здесь на славу! У каждой буквы свой яркий и
632 руб
Раздел: Карточные игры
Игра магнитная "Модная девчонка".
Любая девочка, независимо от возраста, обожает заниматься украшательством, придумывать и экспериментировать. Магнитная игра "Модная
318 руб
Раздел: Бумажные куклы
Настольная игра "Мягкий знак".
«Мягкий знак» – это игра для детей и их родителей. Ее правила предельно просты. Для игры нужен только комплект карт. На каждой из них
357 руб
Раздел: Внимание, память, логика

49. Разработка игровой программы "Морской бой"

50. Комплекс программ для создания Web сайта

51. Антивирусные программы

52. Разработка программы расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью

53. Разработка рисунка настенного календаря с помощью графического редактора CorelDRAW. Создание базы данных «Туристических фирм г. Минска» с помощью пакета программ Access

54. Программа управления самолётом в режиме автопилота
55. Разработка программы рисования линий с помощью мыши
56. Программа по ведению операций в магазине

57. Исследование программы PhotoShop и других программ Adobe

58. Работа с программой EUREKA

59. Отчет по работе с программами SysInfo, PrintFx, FontEdit, Snipper

60. Компьютерной программе Visio v.4.0

61. Программа защиты объектов операционной системы Windows95, работающей в многопользовательском режиме под управлением сервера Novell NetWare

62. Программа Adobe Photoshop

63. Офисные программы (текстовый редактор WORD)

64. Access-одна из программ MS Office

Копилка "Лаванда", 16x21 см.
Копилка поможет Вам наконец-то собрать требуемую сумму для покупки долгожданной вещицы. Регулярно удалять пыль сухой, мягкой
343 руб
Раздел: Копилки
Набор детской посуды "Авто", 3 предмета.
Набор посуды для детей включает в себя три предмета: суповую тарелку, обеденную тарелку и кружку. Набор упакован в красочную, подарочную
397 руб
Раздел: Наборы для кормления
Диванчик раскладной "Кошечка".
Диван "Кошечка" - красивый, функциональный, надежный детский диван. Он способен украсить детскую комнату и может использоваться
2791 руб
Раздел: Прочие

65. Слои изображения в программе Photoshop

66. Программы архиваторы

67. Чем отличается папка Мой компьютер и программа Проводник? Как настроить рабочий стол? (и другие ответы на вопросы)

68. Компьютерные Вирусы. Программа-полифаг Aidstest

69. Создание баннеров с помощью программы Adobe PhotoShop 7.0

70. Замечательные кривые
71. Программа государственного экзамена по математике для студентов математического факультета Московского городского педагогического университета
72. Построение решения задачи Гурса для телеграфного уравнения методом Римана

73. Структура исчисления предикатов построение логического вывода

74. Кривизна плоской кривой. Эволюта и эвольвента

75. Решение задач на построение сечений в многогранниках методом следов

76. Построение, разработка версий и планирование расследования

77. Методические рекомендации и программа учебной практики (специальность - 7.060101 "Правоведение")

78. Комплексное исследование глобальных экологических проблем: от понятийного аппарата до модельных построений

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

80. Контролирующие программы в Internet

Подставка для колец "Собачка", 8 см.
Регулярно удалять пыль сухой, мягкой тканью. Материал: металл (сплав цинка с покрытием золотой краской), стекло. Высота: 8 см. Товар не
365 руб
Раздел: Подставки для украшений
Настольная игра "Соображарий".
Сколько животных начинающихся на букву "К" вы знаете? Сможете ли за минуту назвать самое длинное слово на букву "Б"? А
490 руб
Раздел: Игры со словами
Концентрированный стиральный порошок "Burti Compact Baby" для детского белья, 900 г.
Благодаря специальной формуле исключительная эффективность стирки сочетается с бережным уходом. Благодаря особой рецептуре, отсутствия
465 руб
Раздел: Для стирки детских вещей

81. ПУП в рамках закона и морали. Программа самой благозвучной партии России - партии умеренного прогресса

82. Программа для расчета аспирационной системы деревообрабатывающего цеха

83. Компьютерная программа для расчета режимов резания деревообрабатывающего продольнофрезерного станка

84. Разработка системы управления асинхронным двигателем с детальной разработкой программы при различных законах управления

85. Построение и исследование динамической модели портального манипулятора

86. Расчет и построение тягово-динамической характеристики тягача с гидромеханической трансмиссией
87. Практика построения логистических систем
88. Построение ГМССБ и развитие радиосвязи на морском флоте

89. Основы самосовершенствования. Программа личностного роста

90. Устройство цветных кинескопов. Принципы построения системы SECAM

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

92. Программа социологического исследования

93. Проблемы построения теории сознания

94. Комплексное исследование глобальных экологических проблем: от понятийного аппарата до модельных построений

95. Планирование и программа аудита

96. Анализ рынка бухгалтерских и аналитических программ

Кружка "Акула".
Пусть утро станет добрым! Кружка с забавной фигуркой на дне - это шанс вызвать улыбку близкого человека. По мере выпивания напитка фигурка
434 руб
Раздел: Оригинальная посуда
Рюкзак для школы и офиса "SpeedWay 2", 46x32x19 см, серо-оранжевый.
Рюкзак для школы и офиса с отделением для ноутбука с диагональю до 15,6”. 3 больших отделения. 1 передний карман для мелких предметов. 2
1092 руб
Раздел: Без наполнения
Фломастеры утолщенные "Jumbo", 36 цветов.
Фломастеры, вентилируемый колпачок, утолщенный трехгранный корпус. В наборе: 36 цветов.
829 руб
Раздел: Более 24 цветов

97. Концепция построения системы управления Московского представительства японской корпорации

98. Программа Производственной практики студентов 4 курса экономического факультета по направлению – 521500 "Менеджмент"

99. Прогнозирование банкротства и разработка антикризисной программы предприятия

100. Ответы на вопросы ГОС экзамена по Президентской программе 2004г. (менеджмент, экономика, финансы, маркетинг)


Поиск Рефератов на сайте za4eti.ru Вы студент, и у Вас нет времени на выполнение письменных работ (рефератов, курсовых и дипломов)? Мы сможем Вам в этом помочь. Возможно, Вам подойдет что-то из ПЕРЕЧНЯ ПРЕДМЕТОВ И ДИСЦИПЛИН, ПО КОТОРЫМ ВЫПОЛНЯЮТСЯ РЕФЕРАТЫ, КУРСОВЫЕ И ДИПЛОМНЫЕ РАБОТЫ. 
Вы можете поискать нужную Вам работу в КОЛЛЕКЦИИ ГОТОВЫХ РЕФЕРАТОВ, КУРСОВЫХ И ДИПЛОМНЫХ РАБОТ, выполненных преподавателями московских ВУЗов за период более чем 10-летней работы. Эти работы Вы можете бесплатно СКАЧАТЬ.