ackermann

    0熱度

    2回答

    多的任務是創建一個使用遞歸,我成功地做了計算公式阿克曼的程序。所述任務的一部分表示: 「功能應該打印遞歸函數調用其是多個k的數目集合K = 100的n個 值;米< = 3,且k = 1; 000;。對於所有其他值,您的程序還應該打印所有函數調用的總數 。「 的阿克曼功能應該是打印出來的函數調用和遞歸函數調用的次數,但我無法弄清楚如何做到這一點。任何幫助都會很棒。謝謝! 這是我到目前爲止有: #in

    3熱度

    2回答

    我已經在C中編寫了下面的代碼。我們可以稱之爲尾遞歸實現嗎? #include <stdio.h> int ackermann(unsigned int *m, unsigned int *n, unsigned int* a, int* len) { if(!*m && *len == -1) { return ++*n; } else if(!*m

    3熱度

    1回答

    我試着編寫此代碼來計算Ackerman值以及該函數被調用的次數。但是,計數器始終處於0。你能幫我嗎? /* A(m,n) = n+1, if m==0 A(m,n) = A(m-1,1), if m>0 and n==0 A(m,n) = A(m-1,A(m,n-1)), if m>0 and n>0 */ #include<stdio.h> static int w=0; int

    4熱度

    4回答

    有誰知道的時間複雜度來計算阿克曼功能ACK(M,N)在大O符號或者其所屬的複雜性類?只需要確認(3,n)就足夠了。 我在某個地方看過它是非編者的? 謝謝。 代碼段: public class Ackermann { public static int ackermann(int n, int m) { if (n == 0) return m + 1;

    0熱度

    1回答

    我目前正在做一個阿克曼功能問題,我們必須在用戶輸入的失效保護中進行編碼。因此,如果用戶輸入通常會導致程序崩潰,它只會發送一條消息。我能夠找出例外,如果整數值太大,但我不知道如何檢查用戶輸入是否是一個整數。我試過嘗試並用「InputMismatchException」捕獲塊,但是代碼開始混亂並且出錯或者不起作用。 public static void main(String[] args) {

    0熱度

    1回答

    我想了解OCaml中的Y組合器。我從here獲取了一些代碼,我正在嘗試使用它來編寫Ackermann函數。在鏈接的例子中,這些函數只需要一個參數。 Ackermann函數需要兩個參數,並且因爲它而一直存在語法錯誤。我到目前爲止的代碼是 type 'a mu = Roll of ('a mu -> 'a);; let unroll (Roll x) = x;; let fix f = (fu

    -1熱度

    1回答

    阿克曼的功能已經試圖通過下面的代碼來實現 def A(m, n): if m == 0: return n + 1 elif m > 0 and n == 1: A(m - 1, 1) elif m > 0 and n > 0: A(m - 1, A(m, n - 1)) print A(4, 5)

    4熱度

    5回答

    我試圖用Java編寫遞歸Ackermann函數。但是我認爲我在某個地方出錯了!任何人都可以看看,檢查並指出我的方向是否正確,以糾正我的代碼?謝謝! 我的代碼的問題是,在我寫的,我想,如果有什麼n ==可0和m == 0,有沒有爲這個區域?這會落在if(m == 0)之下還是它需要它自己的if語句? 我的以下解決方案是否正確?如果我以不同的順序給出相同的數字,它會給出不同的結果,我不確定這是否意味着

    8熱度

    3回答

    我想在Coq中定義Ackermann-Peters函數,並且收到一條我不明白的錯誤消息。正如你所看到的,我將Ackermann的參數a, b包裝成一對ab;我提供了一個爲參數定義排序函數的順序。然後,我使用Function表格來定義Ackermann本身,爲它提供ab參數的排序功能。 Require Import Recdef. Definition ack_ordering (ab1 ab2

    1熱度

    2回答

    有可能計算總計算遞歸函數ackermann(m,n)與參數m>=4和n>=1 python不超過最大遞歸深度? def ackermann(m,n): if m == 0: return n+1 if n == 0: return ackermann(m-1,1) else: return ackermann(m-1,ackerm