Содержание
- 2. Назначение проекта Интерпретатор Лиспа, предназначенный для использования в учебном процессе; Включающий все возможности создания windows-приложений (графический
- 3. Ранние версии соответствовали стандарту Лисп 1 Начиная с редакции ядра 1.13.1 предпринимаются систематические попытки приблизить HomeLisp
- 4. В этом сообщении будут рассмотрены изменения двух последних лет: - Рациональные и комплексные числа; - Многозначные
- 5. Рациональные числа До сих пор Лисп остается чуть ли не единственным языком, поддерживающим рациональную арифметику.
- 6. Действия с рациональными числами (+ 4 1/3) ==> 13/3 (+ 1/2 1/3) ==> 5/6 (sin -1/2)
- 7. Какую пользу можно извлечь из рациональных чисел в учебно-методическом плане?
- 8. Известная задача Вычислить с наперед заданной точностью eps синус и косинус по формуле Тэйлора: cos(x)=1-(x2/2!)+(x4/4!)-(x6/6!)+... sin(x)=x-(x3/3!)+(x5/5!)-(x7/7!)+...
- 9. float Cos(float x, float eps) { float s,a,n; s=a=n=1; while (1) { a=-a*x*x/(n*(n+1)); s+=a; if (fabs(a)
- 10. 0.000e+000 1.000000e+000 1.000000e+000 0.000000e+000 5.000e-002 9.987503e-001 9.987502e-001 1.000000e-008 1.000e-001 9.950042e-001 9.950042e-001 0.000000e+000 1.500e-001 9.887711e-001 9.887711e-001 0.000000e+000
- 11. Причина заключается в том, что плавающая арифметика коварна – при суммировании рядов подобного типа происходит катастрофическая
- 12. (defun my-cos (x &optional (eps 1E-8)) (let ((a 1) (s 1) (k 0)) (loop (when (
- 13. 24370613165454113267560338608221954982554281385203094554670358004072039248121649326796191979218353411428243256901695353743984506265611950655237792210831033740166338199817232878060581913569126766599 / 25255410493873184332225648114958816946608988211936130235611855567635907889663184438789801530068885022105337104695728469968259460206109490815736175504358202660509266505949702813572299506856327202849 (my-cos 50)
- 14. Переведем его в десятичную дробь: (rat2flo 24370613165454113267560338608221954982554281385203094554670358004072039248121649326796191979218353411428243256901695353743984506265611950655237792210831033740166338199817232878060581913569126766599/25255410493873184332225648114958816946608988211936130235611855567635907889663184438789801530068885022105337104695728469968259460206109490815736175504358202660509266505949702813572299506856327202849) ?0.964966028620532 А теперь возьмем значение cos(50), вычисленное библиотечной функцией
- 15. Комплексные числа В HomeLisp комплексные числа представляются точно в таком же виде, как в Common Lisp:
- 16. Многозначные функции Для работы с функциями, возвращающими множество значений, предназначены специальные функции MULTIPLE-VALUE-BIND и VALUES
- 17. (defun truncate (x y) (values (\ x y) (% x y))) ==> TRUNCATE (truncate 1 2)
- 18. Don’t loop, iterate! https://common-lisp.net/project/iterate/doc/ В HomeLisp реализовано достаточно широкое подмножество функций универсального итератора.
- 19. (defun decart (x y) (let ((r nil)) (iter (for a in x) (iter (for b in
- 20. Структуры Главным является макро DEFSTRUCT, которое получает на вход имя структуры и имена полей, а порождает
- 21. (defstruct ship x y vx vy w) ==> (STRUCTURE) (setq *s1* (make-ship :x 11 :y 11
- 22. Интерфейс с WinAPI Интерфейс с WinAPI обеспечивается тремя функциями: - LOADLIBRARY; - FREELIBRARY; - CALLAPI.
- 23. (defun Graphic () (let* ((user32 (loadlibrary "user32.dll")) (gdi32 (loadlibrary "gdi32.dll")) (hwnd (callAPI user32 "GetActiveWindow")) (hdc (callAPI
- 26. Скачать презентацию