blob: 53e466826e8a8ad638327c05117cc702b7ebd4b5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
(defun ~~ (a b)
(if (< (abs (- a b)) 0.01)
nil
(error "failed")))
(assert (= 1 (abs -1)))
(assert (= 1.1 (abs -1.1)))
(assert (= 1 (abs 1)))
(assert (= 1.1 (abs 1.1)))
(~~ 3.141 pi)
(assert-error (~~ 3.2 pi))
(~~ 2.718 e)
(assert (= 1.0 (float 1)))
(assert (= -1.0 (float -1)))
(~~ 8 (pow 2 3))
(~~ 1.414 (pow 2 0.5))
(~~ 1.732 (pow 3 0.5))
(~~ 2.0 (floor 2.1))
(~~ 2.0 (floor 2.5))
(~~ 2.0 (floor 2.7))
(~~ -2.0 (floor -1.1))
(~~ -2.0 (floor -1.5))
(~~ -2.0 (floor -1.7))
(~~ 2.0 (truncate 2.1))
(~~ 2.0 (truncate 2.5))
(~~ 2.0 (truncate 2.7))
(~~ -2.0 (truncate -2.1))
(~~ -2.0 (truncate -2.5))
(~~ -2.0 (truncate -2.7))
(~~ 2.0 (ceiling 1.1))
(~~ 2.0 (ceiling 1.5))
(~~ 2.0 (ceiling 1.7))
(~~ -2.0 (ceiling -2.1))
(~~ -2.0 (ceiling -2.5))
(~~ -2.0 (ceiling -2.7))
(~~ 2.0 (round 2.1))
(~~ 2.0 (round 1.5))
(~~ 2.0 (round 1.7))
(~~ -2.0 (round -2.1))
(~~ -2.0 (round -1.5))
(~~ -2.0 (round -1.7))
(~~ 0 (sin 0))
(~~ 1 (sin (/ pi 2)))
(~~ -1 (sin (- (/ pi 2))))
(~~ 1 (cos 0))
(~~ 0 (cos (/ pi 2)))
(~~ 0 (cos (- (/ pi 2))))
(~~ (tan 1.1234) (/ (sin 1.1234) (cos 1.1234)))
(~~ (asin 0.5) 0.525)
(~~ (acos 0.5) 1.047)
(~~ (atan 0.5) 0.463)
(~~ 0 (ln 1))
(~~ 1 (ln e))
(~~ 2 (ln (* e e)))
(~~ 1.5 (ln (* e (sqrt e))))
(~~ 1.333 (ln (* e (cbrt e))))
(~~ 0.667 (ln (/ e (cbrt e))))
(~~ 0 (log10 1))
(~~ 1 (log10 10))
(~~ 2 (log10 (* 10 10)))
(~~ 1.5 (log10 (* 10 (sqrt 10))))
(~~ 1.333 (log10 (* 10 (cbrt 10))))
(~~ 0.667 (log10 (/ 10 (cbrt 10))))
(~~ 0 (log2 1))
(~~ 1 (log2 2))
(~~ 2 (log2 (* 2 2)))
(~~ 1.5 (log2 (* 2 (sqrt 2))))
(~~ 1.333 (log2 (* 2 (cbrt 2))))
(~~ 0.667 (log2 (/ 2 (cbrt 2))))
(~~ (pow e 1.5) (exp 1.5))
|