- 締切済み
newton法プログラミング
Schemeの言語でnewton法を作成プログラミングなんですが、なかなか出来ないのです。 答えがほしい。お願いします! 関数newtonへの引数tとして与えるとともに、最大の繰り返し回数nを引く数として指定し、収束しない場合でも再帰を停止するように変更しなさい。修正したnewtonをnewton2という名前としなさい。 ;; (define TOLERANCE 0.0001) ;; d/dx : (number->number) number number -> number ;; inclination of the tangent (define (d/dx f x h) (/ (- (f (+ xh)) (f (- x h))) (* 2h))) ;;find-root-tangent: (number -> number) number -> number ;;to find the root of the tangent of f at r0 (define (find-root-tangent f r0) (local ((define H 0.001)) (- r0 (/ (f r0) (d/dx f r0 H))))) ;;newton: (number->number) number->number ;;to find a number guess such that (<= (abs (f guess)) TOLERANCE) (define (newton f guess) (cond [(<= (abs(f guess)) TOLERANCE) guess] [else (newton f (find-root-tangent f guess))])) ;;for test (define (f2 x) (+ (*x x x)(* -6 x x) (* 11 x) -6)) (newton f2 0.5) ;;newton2 : (number->number) number number number -> number (define (newton2 f guess t n) (cond..................?????<----ここが問題です
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Tacosan
- ベストアンサー率23% (3656/15482)
その「問題」のところで何をすべきか理解していますか?