私は次のリストを持っている:フィルタエレメント - OCamlの
["A";"AA";"ABC";"BCD";"B";"C"]
私はランダムにリストから要素を抽出しています。これは正常に動作します
let randomnum = (Random.int(List.length (list)));;
let rec code c =
if (String.length c) = 3 then c
else (code ((List.nth (list) (randomnum)))) ;;
print_string (code ((List.nth (list) (randomnum)))) ;;
長さ3のランダム文字列から取り出している場合:しかし、私は抽出要素だけではないあまり、私は次のようにこれを行うにしようとしています3.
よりもサイズ3とすべきですリスト。
しかし、長さが< 3の文字列が選択された場合、プログラムは終了しません。 私は長さ= 3のいずれかを取得するまで、新しいコードが取得され続けるように再帰呼び出しを試みています。
これが終了しない理由を理解できません。 print文によって何も出力されません。
ありがとうございます。私はちょうどそれを試み、このポストを削除しようとしていたあなたの返信を見た:)ありがとう再び。 – JJunior