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