null 値を含む可能性のあるリストがあります。ただし、これらの null 値は無視するつもりです。私のリストの例は次のとおりです。
(() () MC+ () MD- () () ME+)
私の手順では、これらの要素を繰り返し処理し、let を使用して、このリスト内の 1 つの要素にバインドするローカル バインド変数を作成しています。ただし、値が null でない場合にのみ、変数をバインドできるはずです。現在、私は次のようにしています:
(let* ([disjunct (car disjunct-list)])
ただし、その要素が null でない場合にのみ、disjunct に値を割り当てる必要があります。これは、disjunct に割り当てられる値が次のようになることを意味します。MC+
すべての値を反復処理し、次の非 null 値を選択して に割り当てる必要がありdisjunct
ます。
もう1つ、私は今後さらに操作を行っていdisjunct
ます。そして再帰的に、リストの残りの行を下に渡します。したがって、次にこのプロシージャを再帰的に呼び出すときdisjunct
は、値がMD-
. それを使用(cdr disjunct-list)
すると、次のリストを取得できるはずです。(() MD- () () ME+)
これはどのように行うことができますか?