Halo semuanya! Berjumpa dengan Miniblog dari Inzaghi's Blog! Fungsi Ackermann juga berhubungan erat dengan Fungsi Hiperoperasi (Hyperoperation Function). Bagaimanakah Program Fungsi Ackermann dalam Bahasa Pemrograman seperti C#? Inilah penjelasannya!
Sumber : Mathworld.Wolfram.com, Wikipedia.org, dan Geeksforgeeks.org
Dalam Teori Komputabilitas, Fungsi Ackermann, dinamai menurut Wilhelm Ackermann, adalah salah satu contoh paling sederhana dan paling awal ditemukan dari fungsi total yang dapat dihitung yang bukan Rekursif Primitif. Semua fungsi Rekursif Primitif bersifat total dan dapat dihitung, tetapi fungsi Ackermann mengilustrasikan bahwa tidak semua fungsi yang dapat dihitung total bersifat Rekursif Primitif.
Setelah publikasi Ackermann tentang fungsinya (yang memiliki tiga argumen bilangan bulat non-negatif), banyak penulis memodifikasinya agar sesuai dengan berbagai tujuan, sehingga saat ini "fungsi Ackermann" dapat merujuk ke salah satu dari banyak varian fungsi aslinya. Salah satu versi umum, fungsi Ackermann–Péter dua argumen didefinisikan sebagai berikut untuk bilangan bulat non-negatif m dan n :
Fungsi Ackermann A(x, y) dapat didefinisikan sebagai Bilangan Bulat x dan y dengan :
Dan inilah Fungsi Ackermann dengan Bahasa C# :
using System;public class Ackermann{public static int Ack(int m, int n){if (m == 0){return n + 1;}else if ((m > 0) && (n == 0)){return Ack(m - 1, 1);}else if ((m > 0) && (n > 0)){return Ack(m - 1, Ack(m, n - 1));}else{return n + 1;}}public static void Main(string[] args){int x, y, A;Console.WriteLine("Ackermann Function A(x, y)");Console.Write("Insert value of x : ");x = Convert.ToInt32(Console.ReadLine());Console.Write("Insert value of y : ");y = Convert.ToInt32(Console.ReadLine());A = Ack(x, y);Console.WriteLine("A(" + x + ", " + y + ") = " + A);}}
Input dan Output :
Ackermann Function A(x, y)
Insert value of x : 2
Insert value of y : 4
A(2, 4) = 11
Ackermann Function A(x, y)
Insert value of x : 3
Insert value of y : 4
A(3, 4) = 125
Mohon maaf apabila ada kesalahan sedikitpun pada Kode Program ini.
Terima Kasih 😀😊😘👌👍 :)