ユーザーが空でない文字列を入力し、入力から長さ1のサブ文字列でランダムな文字を返すプロシージャを作成しようとしています。
すなわち
(pick-at-random "word")
~"w"
(pick-at-random "word")
~"r"
これまでのところ私は持っています:
(define pick-at-random
(lambda (s)
(substring s (random(string-length s)) ())))
これにより、表示したい文字の位置がわかり、()がどこにあるかを感じます。部分文字列の開始値を表す変数をいくつか用意して、それに1つ追加する必要があります。しかし、私はこれを行う方法がわかりません。簡単に言えば、開始値でランダム関数を使用しながら、サブストリングを長さ1に制限する方法を尋ねています。