scheme

    1熱度

    1回答

    我試圖按照OEIS-A003418中所述爲1至n中的所有數字生成最小公倍數。在DrRacket REPL我用下面的代碼: (lcm (apply values (build-list 256 add1))) ,給了我一個「結果參數數量不匹配」錯誤(預計1,收到的256)。當我省略lcm時,我得到一個從1到256輸出到控制檯的序列。我不確定引起不匹配的原因,因爲lcm應該能夠採用任意多個參數(根

    0熱度

    2回答

    >(define (f l) l) ;;;consider l to be a list 這個功能應該是什麼複雜性。據我說,它應該是O(長度爲l),因爲應該在堆上創建一個新列表並創建並返回一個新列表。 所以,如果它是O(長度l)則的複雜性(追加L1 L2)函數必須是O(長度L1 +長度L2),因爲 (define (append l1 l2) (if (null? l1) l2 [c

    0熱度

    1回答

    我是新來的計劃,很難與汽車和司機使用。我在AST中有一個AST字符串字面值。 (define ast '(program ((assign (var i int) (call (func getint void int)())) (assign (var j int) (call (func getint void int)())) (while (neq (var

    2熱度

    1回答

    以下代碼搜索圖並根據作爲參數傳遞的謂詞函數返回true或false。 該圖以鄰接表的形式表示。 假設圖形不包含循環。 代碼: (define (search predicate? key) (define value-list (lookup key)) (if (not (empty? value-list)) (if (findf predicate? valu

    1熱度

    1回答

    我有一個point記錄類型定義如下時: (define-record-type point (make-point x y) point? (x point-x) (y point-y) ) 現在,我想擴展point記錄類型,定義了一個新的記錄類型如下: (define-record-type cpoint (make-cpoint col

    -1熱度

    1回答

    我正在關注cs61a 2015春季課程。 一個方案中的項目的問題是: 實現list-分區程序,其中列出了所有的辦法 分區正整數總不使用連續的整數。每個分區的 內容必須按降序排列。提示:定義一個幫助程序來構建分區。內置附錄 過程將創建一個包含兩個參數列表的所有元素的列表。 questions.scm中的cons-all過程向列表中的每個列表添加第一個元素。 數5具有4個分區不包含連續的整數: 4,1

    2熱度

    1回答

    這裏是我的方案代碼: (define (fact n) (if (= n 1) 1 (* n (fact (- n 1))))) (define (main args) (fact (car args))) 然後我運行這段代碼的腳本在bash命令: csi -ss test.scm 4 然而,口譯員得到這個錯誤信息: Error: (=) bad

    -2熱度

    1回答

    我如何編寫我自己的排序程序在程序中接受程序並根據程序進行排序! 如果可以,程序是什麼? 例如 - (排序「(2 4 9 5 3)>)的產率(9 5 4 3 2) 而且任何人都可以提供一個程序,用於在第二列表中搜索一個列表的每個元素!

    2熱度

    2回答

    存在許多不同的Scheme實現,其中一些可能帶有比其他更多的內置功能(或怪癖)。假設我們想寫一段Scheme代碼,它可以在許多Scheme實現中移植到實際中。有沒有一種標準的方法來檢測哪個Scheme實現正在運行代碼? (通過「標準方式」,我的意思是通常的做法,或按照方案標準的規定)。

    0熱度

    1回答

    編寫一個過程以銷燬我的訪問控制模型中的對象並模擬每種情況。 這是我的代碼。 (define st1 (term (st 3 2 (,s0 ,s1 ,s2) (,o0 ,o1) ,br ,m1))) (define m1 (term ((,s0 control ,s0) (,s1 (trans ,r1) ,o0) (,s2 ,r2 ,o1)))) (define r1 (term read))