Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / tests / ackermann.cs
1 // $Id$
2 // http://www.bagley.org/~doug/shootout/
3
4 public class ackermann {
5
6     public static int Main(string[] args) {
7         int NUM = 8;
8         if (args.Length > 0)
9                 NUM = System.Int32.Parse (args [0]);
10         //return Ack(3, NUM) != 2045? 1: 0;
11         System.Console.WriteLine("Ack(3," + NUM + "): " + Ack(3, NUM));
12         return 0;
13     }
14
15     public static int Ack(int M, int N) {
16         if (M == 0) return( N + 1 );
17         if (N == 0) return( Ack(M - 1, 1) );
18         return( Ack(M - 1, Ack(M, (N - 1))) );
19     }
20
21 }