Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Толстоба Н.Д. Компьютерное конструирование оптических приборов (2000)

Толстоба Н.Д. Компьютерное конструирование оптических приборов (2000), страница 5

PDF-файл Толстоба Н.Д. Компьютерное конструирование оптических приборов (2000), страница 5 Основы квантовой электроники (ОКЭ) (22009): Книга - 8 семестрТолстоба Н.Д. Компьютерное конструирование оптических приборов (2000): Основы квантовой электроники (ОКЭ) - PDF, страница 5 (22009) - СтудИзба2018-12-30СтудИзба

Описание файла

PDF-файл из архива "Толстоба Н.Д. Компьютерное конструирование оптических приборов (2000)", который расположен в категории "". Всё это находится в предмете "основы квантовой электроники (окэ)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "основы квантовой электроники (окэ)" в общих файлах.

Просмотр PDF-файла онлайн

Текст 5 страницы из PDF

Выведите на экран список (SETVAR ?) переменных, и выувидите, какие названия вы не можете использовать в своей программе.9.1.1. Переменные АutoLISPИмя переменной может состоять из любых печатных символов (в томчисле и цифр), но не должно включать в себя зарезервированные AutoLISPсимволы, так как они интерпретируются специальным образом.Зарезервированные символы:.

‘ “ ; ( ) или пробелЗнаки операций AutoLISP:- * = > < + - /“Плохие” символы:? ’ ! \AutoLISP не различает большие и малые буквы. Кроме того, присоздании новых переменных просьба не увлекаться и не вводить названия,длина которых выходит за пределы шести символов (имя, длина которогобольше, требует для хранения больший объем памяти). Также нерекомендуется начинать имя переменной с цифры.429.1.2. Типы данных AutoLISP· Строковые переменные - совокупности букв и констант, заключенных вкавычки.· Целые переменные - положительные или отрицательные целые числа(без дробей и десятичной точки).

Целые числа представлены в машинедвумя байтами и поэтому не могут выходить за диапазон (-32 768,32 767).· Действительные переменные - положительные или отрицательные числас десятичной точкой. Особенность: если значение меньше 1, то нужноявно указывать 0 перед десятичной точкой, иначе будет выдаватьсясообщение об ошибке.Переменные любого из простых типов называют атомами.Списком называется набор разделенных пробелами атомов и/илисписков, заключенных в круглые скобки.Перечислим некоторые типы данных AutoLISP:INTЦелые величиныREALЧисла с плавающей точкойSTRСтроковые константыFILEДескрипторы файловSYMСимволыLISTСписки и функции пользователяSUBRВнутренние функции AutoLISP.....и так далее ...9.1.3.

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

Результатом может быть нуль (nil) или результат вычисленияпоследнего подвыражения.· С логической точки зрения любое возвращаемое значение либоистинно, либо ложно. Если значение выражения вычислено быть не может ивозвращается нуль, то оно считается ложным. Если выражение вычисляется,то оно считается истинным - не-нуль (non-nil).Итак, выражение AutoLISP имеет вид:(функция аргумент1 аргумент2 ...

аргументN)Функция - имя операции (в том числе и арифметической), котораядолжна быть выполнена. Число аргументов может быть больше 2.Произведение трех чисел:(* 2 3 4)Вложенные выражения: (* 4.4 (- 3.3 (+ 2.2 1.1 )))Выражение анализируется AutoLISP слева направо, пока не встретитсяскобка. Если встречается закрывающая скобка, то завершается анализвыражения, выполняется функция и вычисленное значение передается наболее старший уровень вложенности или в AutoCAD. Если же встречаетсяоткрывающаяся скобка, AutoLISP переходит к анализу выражения болеемладшего уровня вложенности и, пока не завершит его анализ, не перейдет кдальнейшему анализу выражения предыдущего уровня.

Предел вложенностивыражений - 100.44Функции присвоенияИспользуются две функции. В переменной может храниться не толькозначение, но и целое выражение, а точнее, его адрес. Функция SETQпозволяет нам об этом не думать и считать, что мы обращаемся прямо кзначению переменной. Функция SET считает, что мы обращаемся к самойпеременной. Апостроф перед переменной означает значение переменной.( set ‘A 5.0 )Возвращает 5.0 и присваивает это значение А.( set ‘B ‘(A +C))Возвращает выражение (А+С) и присваивает его В.Итак, в переменной хранится выражение, причем именно выражение, ане текстовая константа - изменяя значения переменных А и С мы меняемзначение В.

Эта запись эквивалентна записи( setq B ‘(A +C))Если две переменные вложены друг в друга, то к младшей можнообращаться через старшую, косвенно:( set ‘B ‘A)Устанавливает А в В и возвращает А.( set B 640)Устанавливает А в 640 и возвращает 640.9.2. Обзор функций AutoLISP9.2.1. Математические функции(+ число1 число2 ...) Возвращает сумму всех аргументов.(- число1 число2 ...) Вычитает число1 из числа2, если более двухаргументов, то из первого аргумента вычитается сумма всех остальных, еслизадан один аргумент, то он вычитается из нуля (инвертируется его знак).45(* число1 число2 ...) Возвращает произведение всех чисел.(/ число1 число2 ...) Делит число1 на число2, а если аргументовболее двух, то первое число делится на произведение всех остальных.(1+число) Увеличение целого или действительного аргумента наединицу.(1-число) Уменьшение целого или действительного аргумента наединицу.(atanчисло1 [число2]) Если не задано число2, то возвращаетарктангенс переменной число1 в радианах, область допустимых значений -[-pi,pi] радиан.

Если заданы оба числа, то возвращает арктангенс переменнойчисло1/число2 в радианах. Если число2 - нуль, то в зависимости от знакапеременной число1 возвращается + или - 1.570796 радиан (+90o или -90o).(abs число) Вычисление абсолютного значения действительного илицелого числа.(cos число) Возвращает значение косинуса угла, заданного аргументомв радианах.(expcтепень) Вычисляет значение экспоненциальной функции соснованием е и аргументом, равным степени.(exptоснование степень) Вычисляет значение экспоненциальнойфункции с указанным основанием и степенью.(gcd число1 число2 ...) Возвращает наибольший общий делитель.(log число) Натуральный логарифм аргумента.(max число1 число2 ...) Наибольший аргумент.(min число1 число2 ...) Наименьший аргумент.(rem число1 число2 ...) Остаток от деления переменной число1 напеременную число2.46(sin число) Возвращает значение синуса угла.(sqrt число) Извлекает квадратный корень из аргумента.9.2.2. Логические функции AutoLISPЛогический оператор - это функция, сравнивающая между собой дваили более аргументов.

Результат может быть либо истина (non-nil), либоложь (nil).(and выражение1 выражение2 ) Возвращает результат выполнениялогического И над списком выражений.(not аргумент ) Возвращает результат выполнения логического НЕ надсвоим аргументом.(or выражение1 выражение2 ) Возвращает результат выполнениялогического И над списком выражений.9.2.3. Использование функций GET для ввода данных(getangle точка “текст запроса-подсказки”) Возвращает угол междузаданным пользователем вектором и положительным направлением оси Х.Всегда в радианах.(getcorner точка “текст запроса-подсказки”) Возвращает координатыуказанной пользователем точки.(getdist точка “текст запроса-подсказки”) При любых текущихединицах измерения эта функция всегда возвращает действительное число.(getenvимяпеременной)Возвращаетстроковоезначение,присвоенное переменной среды DOS.(getint “текст запроса-подсказки”) Ввод целого числа. Только склавиатуры.47(getorient точка “текст запроса-подсказки”) То же самое, что иgetangle, но измерение угла происходит относительно текущего направленияизмерения углов.(getpoint точка “текст запроса-подсказки”) Позволяет ввести точку.(getreal“текстзапроса-подсказки”)Позволяетвводитьдействительное число.

Только с клавиатуры.(getstring флаг пробела “текст запроса-подсказки”) Запрашиваетввод текстовой константы. Если флаг пробела указан и не равен нулю, тостроковая константа может содержать пробелы, и завершением вводасчитается нажатие клавиши ENTER, в противном случае строка не можетсодержать пробелы и клавиша ПРОБЕЛ работает как терминатор ввода.(getpvarимяпеременной)Возвращаетзначениесистемнойпеременной AutoCAD.9.2.4. Вывод данных в командную строку(prin1 выражение дескриптор_файла) Выражение выводится наэкран и возвращается в AutoLISP. Если указан дескриптор файла и файлоткрыт, то запись идет сразу на два устройства: на экран и в файл.Печатается только указанное выражение; переход на новую строку неосуществляется, и никакие пробелы не печатаются.(princ выражение дескриптор_файла) То же, что и prin1, ноуправляющие символы не расшифровываются, а выводятся на экран.(print выражение дескриптор_файла) То же, что и prin1, но передпечатью осуществляется переход на другую строку.(prompt строка_символов) Выводит сообщение в командную строку ивозвращает nil.489.2.5.

Условное ветвление программКаждая программа имеет свою логическую структуру. Ветвление - этоспособ управления ходом выполнения программы. Условные операторы средство управления ветвлением программ.(cond ( тест1 результат1 ...) ...) Воспринимает в качестве аргументовлюбое число списков. Оценивает по очереди первые элементы списков, покане встретится элемент, отличный от nil. Затем вычисляется то выражение,которое следует за тестом, и возвращается значение последнего выражения всубсписке. Если в субсписке только одно выражение (например, результатотсутствует), то возвращается значение выражения тест.Как видно из примера, в котором функция COND возвращает 0 или 1 взависимости от введенной пользователем строковой переменной s, этафункцияможетиспользоватьсявкачествеусловногооператорапереключения (“case” во многих языках программирования) :(cond (( = s “Y”) 1)(( = s “y”) 1)(( = s “Д”) 1)(( = s “д”) 1)(( = s “N”) 0)(( = s “n”) 0)(( = s “Н”) 0)(( = s “н”) 0))(if тест-выражение выражение-тогда выражение-иначе )Иногда по условию требуется выполнить не одно, а нескольковыражений.

Для этого используют функцию PROGN. Последовательностьвыражений,объединенныхфункциейвыражением.49PROGN,считаетсяодним(if ( = a b) ( prognsetq a ( + a 10)setq b ( - b 10)))9.2.6. Организация циклов(repeat число выражение1выражение2 ... ) Функция повторяетоператоры указанное число раз.(while тест-выражение выражение1 выражение2 ... )Выход из цикла осуществляется по условию.(foreach имя список выражение) Эта функция, проходя по списку,присваивает каждому элементу имя и вычисляет каждое выражение длякаждого элемента списка.( foreach n ‘( a b c ) ( print n ))эквивалентно( print a ) ( print b )( print c )9.2.7.

Вызов команд AutoCAD из программы на AutoLISPВ этом нам поможет функция( command аргумент1 аргумент2 ... )Аргументы - это команды AutoCAD и их опции. Если в спискевстречается ключевое слово Pause, то функция COMMAND приостановитсвое действие.9.2.8. Файловый ввод/вывод( open имяфайла режим ) Открыть файл - значит подготовитьдескриптор файла к использованию его функциями AutoLISP. Поэтомувозвращаемое функцией open значение должно присваиваться некоторойсимвольной переменной.50( setq a ( open “file.ext” “r” )) Здесь а - дескриптор файла file.ext,открытого для чтения.Допустимые значения флага чтения/записи :ОписаниеРежимopenrОткрыть файл для чтения. Если нет такого файла, то nil.WОткрыть файл для записи.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5193
Авторов
на СтудИзбе
433
Средний доход
с одного платного файла
Обучение Подробнее