racket

    1熱度

    1回答

    我有以下的測試爲例,可以使用read,但遇到一些問題: #lang racket (struct test (num) #:prefab) (define s3 (read (open-input-string "((AK= #s(test .)) (AV))"))) (match s3 [`((AK= ,(struct test (val))) (AV)) (displayln

    2熱度

    3回答

    我正在學習計劃,我必須做的其中一件事是遞歸來確定列表是否是反射的,即當列表反轉時列表看起來是相同的。我必須做到這一點,所以我不能使用列表的反向方法。我也必須使用明顯的遞歸。問題是在計劃中很難訪問列表或使用我們已經學到的非常基本的東西來縮短列表,因爲這些有點像鏈表。我也希望不使用索引。 這樣說我有幾個想法,並想知道如果這些足夠的,你認爲我可以做更好的方案的基礎知識。 使用遞歸(我的實現)顛倒列表並比

    4熱度

    2回答

    我是新的計劃,我試圖追蹤一個函數。我必須加載「跟蹤」功能。根據球拍的文檔,我必須執行: (需要拍/跟蹤) 但響應我得到的回覆是 要求:不確定的; 不能引用未定義的標識符 我很困惑。如果這有所幫助,我正在使用「R5RS」語言。在這裏找不到任何在線或堆棧溢出。

    9熱度

    3回答

    我不喜歡DrRacket,因爲它沒有像Emacs那樣方便的編輯功能,但是我只能通過在.emacs中添加命令「racket current-file.scm」來運行Scheme文件,現在我想運行Scheme文件Emacs描述爲「運行:重置交互窗口並在定義窗口中運行程序」。在DrRacket's manual,我看了命令球拍的幫助「19.1 Running racket and gracket」,貌似

    1熱度

    2回答

    我理解算法,但無法使用方案獲得代碼工作。 我正在構建一個二叉搜索樹。節點是一對(鍵值)。 在Java中,代碼工作正常: public void inOrder(BinaryNode n) { if (n != null) { inOrder(n.left); System.out.println(n.value); inOrder(n.right);

    1熱度

    2回答

    我試圖做一個隊列練習,我打算爲給定隊列寫入入隊,出隊,頂部和大小函數。出隊功能目前給我帶來麻煩。下面顯示了出隊函數的期望結果。 (define q (make-queue)) (enqueue q 10) (enqueue q 20) (enqueue q 30) (dequeue q) 10 (dequeue q) 20 (dequeue q) 我的代碼目前看起來像這樣 (m

    0熱度

    1回答

    你好,我試圖理解mo程序到底是什麼問題。我已經爲隊列中的隊列編寫了入隊,出隊,頂部和大小的代碼。我還編寫了測試用例來在模塊中試用我的程序。當我嘗試通過輸入以下命令「racket run-tests.rkt | less」來運行測試用例時,出現以下錯誤: 「 default-load-handler:預計只有一個module' declaration for隊列',但找到額外的表達:# ===背景=

    0熱度

    1回答

    荏苒兩個名單在一起我試圖寫一個函數調用拉鍊接受兩個列表作爲參數,並返回一個列表,其元素是從原始列表 前或者拍攝。 (拉鍊 '(A B C)'(X Y Z))應該評估的(a X B Y形ÇZ)

    0熱度

    1回答

    我正在嘗試編寫一個名爲unzip的函數,它需要一個列表並計算列表中包含原始列表的交替元素的兩個列表。 到目前爲止,這是我所: (define (unzip lst) (if (null? lst) '() (... 這是應該如何工作的: (解壓「(1 A 2 B 3 C))應計算爲((1 2 3 )(abc))

    1熱度

    2回答

    我正在爲離散數學課解決一些問題,並閱讀了引起我注意的練習(注意:這不是作業,我只是很好奇)。 問題:爲以下程序段執行「打印」語句多少次? (I,J,K,M是整數): for i := 1 to 20 do for j := 1 to i do for k := 1 to j do for m := 1 to k do print (i * j)