JavaScriptでの入力のアッカーマン数の計算
アッカーマン関数
アッカーマン関数は再帰関数の典型的な例であり、特に原始再帰関数ではないため、注目に値します。コールツリーのサイズと同様に、値は非常に急速に大きくなります。
問題
最初と2番目の引数としてmとnの2つの数値を受け取るJavaScript関数を作成する必要があります。この関数は、
で定義されたアッカーマン数A(m、n)を返す必要があります。A(m,n) = n+1 if m=0 A(m,n) = A(m-1,1) if m>0 , n=0 A(m,n) = A(m-1,A(m,n-1)) if m,n > 0
例
const m = 12; const n = 11; const ackermann = (m, n) => { if (m === 0) { return n+1 } if (n === 0) { return ackermann((m - 1), 1); } if (m !== 0 && n !== 0) { return ackermann((m-1), ackermann(m, (n-1))) } } console.log(ackermann(m, n));
-
JavaScriptの...inステートメントについて説明しますか?
for…inループはすべてのオブジェクトプロパティをループします。以下は、JavaScriptでfor..inステートメントを実装するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Doc
-
JavaScriptの番号パターン
ユーザーにテキスト入力とボタンを提供するJavaScriptおよびHTMLプログラムを作成する必要があります。ユーザーが入力に任意の値(たとえば5)を入力してボタンをクリックすると、画面に次のパターンが印刷されます。 (n =5の場合) 01 01 02 01 02 03 01 02 03 04 01 02 03 04 05 例 このためのコードは-になります <html> <head> <title>JavaScript Number Patterns</title> <script type="text/javascrip