こんにちは私はランダムに作るこの関数を持っています:a、b、cまたはd。ラケットのランダム関数
(define random-abcd
(let ([n (random 4)])
(cond [(equal? n 0) 'A]
[(equal? n 1) 'B]
[(equal? n 2) 'C]
[else 'D])))
つまり、4つのランダムな出力が可能です。しかし、パラメータとして与える数値の間に出力を与える再帰的な関数を構築したいと思います。例えば
:
ランダム私の3 - >与え、出力間:B、Cの
ランダム私の5 - >与えますとの間の出力:
ありがとうbはCのDまたはE!
これは、しかし、より読みやすく(およびポータブルです私は97の代わりに ''(char-> integer#\ a) 'を使うことにしました。また、' 'integer-> char' ' number-> char'。 –
@ ChrisJester-Young私はそれらのプロシージャで常に 'number'と' integer'を混同していますので、私は更新しました。 '(char-> integer#\ a)'はasciiで '97'と同じですが、utf-8では7ビットasciiで始まるので、別の答えが得られるようなことではありませんが、明快にする方が良いかもしれません。 – Sylwester