質問編集履歴
1
詳しい説明
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
Schemeを用い
|
1
|
+
Scheme(言語:R5RS)を用いて関数を微分するプログラム
|
test
CHANGED
@@ -1 +1,27 @@
|
|
1
|
-
Scheme(言語R5RS)で、関数を微分するプログラムを作りたいのですが、
|
1
|
+
Scheme(言語R5RS)で、関数を微分するプログラムを作りたいのですが、以下のプログラムでは実行には至りませんでした。どこが間違っているのか、訂正するべきか教えてください。
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
```Scheme
|
6
|
+
|
7
|
+
(define diff
|
8
|
+
|
9
|
+
(lambda (f)
|
10
|
+
|
11
|
+
(map (lambda (t) (cond ((number? t) 0)
|
12
|
+
|
13
|
+
((equal? t 'x) 1)
|
14
|
+
|
15
|
+
((equal? t '+) +)
|
16
|
+
|
17
|
+
((equal? t '-) -)
|
18
|
+
|
19
|
+
((equal? t '*) `(+ '(* number 1) '(* 0 x)))
|
20
|
+
|
21
|
+
((equal? t '**) `(* number '(* 1 '(** x '(- number 1)))))
|
22
|
+
|
23
|
+
) f)
|
24
|
+
|
25
|
+
)))
|
26
|
+
|
27
|
+
```
|