ml

    0

    1答えて

    私はいくつかの再帰関数を関数言語(ML)で書いていますが、それらのいくつかではカウントを維持する必要があります。私は末尾の再帰関数やヘルパー関数を使用することはできません。私はどのようにカウントするべきですか? たとえば、文字列のn番目の要素を削除する問題が発生した場合、その要素を削除する前に再帰関数がn回呼び出されたことをどのように知ることができますか?

    0

    1答えて

    私は3つの要素のリストをとり、これら3つの要素を使って作成された別のリストを返す再帰関数を書く必要があります。たとえば、私は[a、b、c]のようなリストを持っていて、関数は複数aをb回だけ必要とします。だから[2,3,5]は[2,6,18,54,162,486]のようなリストを作成します 私はhd、tl、@、および:: list演算子を理解していますが、リストを作成する。 私はhd([2,3,5]

    1

    1答えて

    私は2つの機能を使用しています。 1つはリストを取り、もう1つはリスト要素でいくつかの作業を行います。 ":79.6から79.16エラー:STDIN結合していない変数またはコンストラクタ:multinHelp" 第二の機能、multinHelpは、 私にエラーを与えている fun multin(L)= let val a = hd(L) val b = hd(tl(L)) val c =

    0

    1答えて

    クラス用の関数を作成中ですが、このエラーが発生しています。 エラー:演算子とオペランドが一致していない[tyconの不一致] オペレータドメイン: 'Zリスト オペランド:' Y一覧 - >「Yリスト式の : はnull tl fun removedub(L) = if (null L) then nil else if (null tl(L)) then hd(L)

    0

    1答えて

    MLで作業するif、then、elseスタイルで書かれた再帰関数があります。この関数には、Null ListとNull tailの2つの基本ケースがあります。最初の基本ケースはパターンマッチングスタイルに変換するのが簡単です。 if(Null L) then false は、私はパターンマッチングのスタイルで他のベースケースを作成する方法を確認していない fun oddNum(nil) = f

    0

    1答えて

    私は、関数を取り込んで変換するためのリストを受け取るOCamlにtransformの形式のフォームを書いています。コンパイルされず、型が一致しないと主張するので、型チェックの点でパターンマッチングで何かが間違っているとわかっていますが、私のケースで何が間違っているのか分かりません。 コンパイルしようとすると関数の名前の下に実際の宣言エラーが表示されます。 let rec convert (fun:

    1

    1答えて

    私はMLプログラミング割り当てを持っていますが、いくつかの関数では、カウントを続けると便利です。例えば、ある関数では、要素が現れるインデックスのリストを返す必要があります。私は関数呼び出しが私のカウントを殺すように、再帰でこれらのものを追跡する方法を知らない。現実の世界では、私はカウント変数についていくつもりですが、それは学校での選択肢ではありません。任意のヒント?

    1

    1答えて

    以下は、入力f =単項関数、& b =積分を取る範囲、およびn =分割するサブ間隔の数で与えられる台形法を使用して確定積分を計算するSMLコードです〜の範囲。 fun integrate f a b n = let val w = (b - a)/(real n) fun genBlock c = let val BB = f c val SB = f (c+w) i

    1

    1答えて

    文字列とインデックス値を引数とする再帰的なML関数を作成し、指定されたインデックスに文字列を分割します。この関数は、2つの文字列を含むリストを返さなければなりません。 インデックスに達しているかどうかを確認する2つの基本ケースと、文字列に文字列がないかどうかを確認する2つの基本ケースが必要であると理解します。私はどのように文字を別の文字列に割り当てるかにつきまとう。注意しておきますが、ヘルパー関数

    0

    1答えて

    ML機能は 私の現在の機能は次のようになりますこれは: fun last func nil = NONE | last func L = let val f = fun getlast(x) = SOME x | getlast(x::xs) = getlast xs in List.filter func L end; 誰でも私のコード