Heim >Web-Frontend >js-Tutorial >Berechnen Sie die Ackermann-Zahl für die Eingabe in JavaScript

Berechnen Sie die Ackermann-Zahl für die Eingabe in JavaScript

PHPz
PHPznach vorne
2023-08-24 13:09:171267Durchsuche

计算 JavaScript 中输入的阿克曼数

Ackermann-Funktion

Die Ackermann-Funktion ist ein klassisches Beispiel für eine rekursive Funktion, besonders bemerkenswert, weil es sich nicht um eine primitive rekursive Funktion handelt. Sein Wert wächst sehr schnell, ebenso wie die Größe seines Aufrufbaums.

Problem

Wir müssen eine JavaScript-Funktion schreiben, die als erste zwei Zahlen m und n akzeptiert und das zweite Argument. Unsere Funktion sollte die definierte Ackermann-Zahl A(m,n) zurückgeben. Beispiel von

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));

Das obige ist der detaillierte Inhalt vonBerechnen Sie die Ackermann-Zahl für die Eingabe in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen