How to write a recursive function the make a number from 3 parameters (f(3, 2, 4) => 423) in C#

1 Answer

0 votes
using System;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Number = {0}", CreateNumber(3, 2, 4)); // 423
            Console.WriteLine("Number = {0}", CreateNumber(1, 2, 3)); // 321
            Console.WriteLine("Number = {0}", CreateNumber(10, 20, 30)); // 300201
        }

        public static int CreateNumber(int x, int y, int z)
        {
            if (x == 0 && y == 0)
                return z;
            
            if (y == 0)
                return CreateNumber(x / 10, y, z * 10 + (x % 10));
            
            return CreateNumber(x, y / 10, z * 10 + (y % 10));
        }
    }
}

/*

run:
 
Number = 423
Number = 321
Number = 300201

*/



answered Oct 7, 2014 by avibootz
...