##xのn乗の計算をしたい
xのn乗を計算するプログラムを、letを用いて書きたいです。
試行錯誤して、エラーが出ないようにはなりましたが、実行に非常に時間がかかり、挙句「メモリを使い切りました」という表示が出てしまって計算できません。
プログラムを修正するべきなのだと思うのですが、初心者のため修正点が分かりません。
問題を指摘して頂けると嬉しいです。
Macbook airでDr.Racketを使用しています。
##記述したプログラム
(define (pow2 x n) (let ((y (pow2 x (/ n 2)))) (cond ((= n 0) 1) ((= (modulo n 2) 0) (* y y)) (else (* x y y)))))
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/07/10 04:19