sml

    0熱度

    1回答

    所以我有一個數據類型: datatype ex = A of int | B of ex * ex; 和實例變量: val x = (B (A 1, B (A 2, A 3))); 我想通過它來打印這樣的: "(1, (2, 3))" 任何幫助將是不勝感激!謝謝。

    2熱度

    1回答

    我正在研究sml項目,其中我必須實現這兩個功能rem & mod用於自定義數據類型。 我知道餘數的定義rem。 紅利=除數*商+餘數 什麼是國防部的定義是什麼? 請用簡單的單詞來解釋這些差異。

    1熱度

    2回答

    (* val bar = fn : (’a * ’b -> ’b) -> ’b -> ’a list -> ’b *) fun bar f b nil = b | bar f b (h::t) = f (h, bar f b t) 這個功能給我們提供了說明它的功能。給出的唯一進一步信息是參數是一個二元函數,一個值和一個列表。從查看它,我已經知道,如果列表爲零,它將返回b值,否則將二進制函數

    -5熱度

    1回答

    我的練習給了我這個作爲原始編碼。 然後,他們希望我們做一個java實現它。 我以爲我現在無法理解它。 這裏有一個地方使用了一個變量「n」,它以某種方式將它全部加起來。 這是我真正的問題,除非有更多的可以調試。 我只是想在下週最後一次學習這些東西。 fun f x y = let val a = x+1 fun g 0 = 0 | g n =

    4熱度

    2回答

    霍納規則用於簡化在特定變量值下評估多項式的​​過程。 https://rosettacode.org/wiki/Horner%27s_rule_for_polynomial_evaluation#Standard_ML 我容易地應用於使用SML的方法中,到一個變量多項式,表示爲int列表: fun horner coeffList x = foldr (fn (a, b) => a + b * x

    0熱度

    2回答

    SML中是否有一個運算符,它允許我追加到列表而無需創建新列表?例如 我不能做到這一點: [1,2,3]::1 ,但我可以這樣做: [1,2,3]@[1] 這是奇怪的,因爲我必須創建一個有1名單。有沒有更好的方法來做到這一點?

    0熱度

    1回答

    如何擁有多個不相互交錯的陳述陳述? 例如玩具例子: fun multi_cases(xs) = case xs of [] => 5 | x::ys => case x of 1 => 2 |_ => 3 | x::[] => case x of 1 => 5 | _ => 7

    2熱度

    1回答

    我寫了一個函數來處理異常,如果我們得到了R2 = 0,I2 = 0,但是當我運行程序我得到這個錯誤: operatii.ml:12: error: Type error in function application. Function: = : ''a * ''a -> bool Argument: (r2, 0.0) : real * real Reason: C

    2熱度

    1回答

    爲什麼1.0 = 2.0不工作?是不是真的一個平等的類型? 它給人的錯誤: Error: operator and operand don't agree [equality type required] operator domain: ''Z * ''Z operand: real * real in expression: 1.0 = 2.0

    0熱度

    1回答

    帶有不可見和可見組件的ML模塊刪除矩陣的第一列和最後一列。 矩陣存儲爲列表清單,如下所示: | 4 | 5 | 6 | 7 | | 8 | 9 | 10 | 11 | | 12 | 13 | 14 | 15 | =>是4×4陣列 上面的矩陣將被存儲爲 val mat = [[4,5,6,7],[8,9,10,11],[12,13,14,15] ]。 我需要使用地圖功能。 樣品試驗: VAL墊= [