2

andステートメントで再帰呼び出しを使用して反復プロセスを構築できますか?

たとえば、目的、foo何もしない関数があります。どのようなプロセス (反復または再帰) を作成しますか?

(define (foo? bar) 
  (if (< bar 0) true (and (> 10 1) (foo? (- bar 1)))))
4

2 に答える 2

4

はい、大丈夫です-これは標準andで読むことができます。

于 2011-01-04T10:00:25.760 に答える
4

Lambert のために、構文を拡張してみましょう。

(define (foo? bar) 
  (if (< bar 0) 
      #t ; tail position, but no call
      (if (> 10 1) 
          (foo? (- bar 1)) ; tail position
          #f))) ; tail position, but no call
于 2011-01-04T10:14:16.147 に答える