Rumah >hujung hadapan web >tutorial js >Kira nombor Ackermann untuk input dalam JavaScript

Kira nombor Ackermann untuk input dalam JavaScript

PHPz
PHPzke hadapan
2023-08-24 13:09:171268semak imbas

计算 JavaScript 中输入的阿克曼数

Fungsi Ackermann

Fungsi Ackermann ialah contoh klasik bagi fungsi rekursif, terutamanya yang patut diberi perhatian kerana ia bukan fungsi rekursif primitif. Nilainya berkembang sangat cepat, begitu juga dengan saiz pokok panggilannya.

Masalah

Kita perlu menulis fungsi JavaScript yang menerima dua nombor m dan n sebagai yang pertama dan hujah kedua. Fungsi kami harus mengembalikan nombor Ackermann yang ditentukan A(m,n) Contoh oleh

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

Atas ialah kandungan terperinci Kira nombor Ackermann untuk input dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam