CAD programy 4M
(equal tvrzení1 tvrzení2 [tolerance])
Určuje, zda jsou dvě tvrzení stejná
Tato funkce porovnává tvrzení1 a tvrzení2. Pokud jsou si rovna, LISP vrací T; pokud ne, vrací se nil. Zatímco funkce equal porovnává dva seznamy, funkce = (rovná se) porovnává čísla a řetězce.
PŘÍKLAD:
Tolerance je suma, ve které se mohou tyto dva výrazy lišit, což je velmi důležité při porovnávání reálných čísel (které mají trpí chybami zaokrouhlení). V následujícím příkladě se dva výrazy mohou lišit o 0.01:
POZNÁMKA: Funkce equal není stejná jako funkce = (rovná se) a eq. Funkce = vrací T, když se dvě čísla nebo dva řetězce rovnají. Funkce equal vrací T, když se rovnají dva výrazy. Funkce eq vrací T, když jsou dva výrazy přiřazeny k jednomu symbolu.
Tato funkce porovnává tvrzení1 a tvrzení2. Pokud jsou si rovna, LISP vrací T; pokud ne, vrací se nil. Zatímco funkce equal porovnává dva seznamy, funkce = (rovná se) porovnává čísla a řetězce.
PŘÍKLAD:
Kód | Vrací |
---|---|
(setq x '(1 2 3 4)) | |
(setq y x) | |
(equal x y) | T |
(equal y '(1 2 3 4)) | T |
Tolerance je suma, ve které se mohou tyto dva výrazy lišit, což je velmi důležité při porovnávání reálných čísel (které mají trpí chybami zaokrouhlení). V následujícím příkladě se dva výrazy mohou lišit o 0.01:
Kód | Vrací |
---|---|
(equal 5.6789 5.67 0.01) | T |
POZNÁMKA: Funkce equal není stejná jako funkce = (rovná se) a eq. Funkce = vrací T, když se dvě čísla nebo dva řetězce rovnají. Funkce equal vrací T, když se rovnají dva výrazy. Funkce eq vrací T, když jsou dva výrazy přiřazeny k jednomu symbolu.