;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Funktionsplot beliebiger Funktionen - Beispiel cosh ; Udo Hübner 20.04.2001 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;; Hier benutzerdefinierte Funktion ;; cosh (DEFUN Funktion (x) (/ (+ (exp x) (exp (- x))) 2.0) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Funktionsplot ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (DEFUN C:FVONX ( / os Xa Xe X inc) ; es wird eine LISP-FUNKTION namens ; FUNKTION aufgerufen, die das Argument x bekommt und y zurückgibt ; gezeichnet wird aus den Punkten eine Polylinie, ; die später in einen SPLINE verwandelt werden kann. (SETVAR "CMDECHO" 0) (if (< (SETQ os (GETVAR "OSMODE")) 16384) ; ofang deaktivieren (SETVAR "OSMODE" (+ os 16384)) ) (INITGET 1); keine Leereingaben erlaubt (SETQ Xa (GETREAL "\nXa Startwert:")) (INITGET 1); keine Leereingaben erlaubt (WHILE (<= (SETQ Xe (GETREAL "\nXe Endwertwert:")) Xa) (PROMPT "\nEndwert muss größer als Startwert sein !") ) (INITGET 7) ; keine Leereingaben, oder Null oder neg. Eingaben erlaubt (SETQ inc (GETREAL "\nInkrement (Zuwachs):")) (SETQ X Xa) (COMMAND "_PLINE") (WHILE (<= X Xe) ; Hauptschleife (COMMAND (PRINT (LIST x (Funktion x)))) (SETQ X (+ X inc)) ) (COMMAND "") (SETVAR "OSMODE" os) (SETVAR "CMDECHO" 1) (PRIN1) ) (PROMPT "FvonX geladen. Befehl FVONX eingeben, um die Beispielfunktion") (PROMPT "\ny= cosh(x) zu sehen. Beispiel Xa= -1, Xe= 1, Inkrement= 0.1") (PRIN1)