public static void Main()
start = r.Next(100, 5000000);
int totalDigits = (int)Math.Floor(Math.Log10(start))+1;
for (int i = 0; i < totalDigits; i++)
int digit = working % 10;
int divisor = (int)Math.Pow(10,Math.Max(i, (int)Math.Floor(Math.Log10(end))+1));
end += ++digit * divisor;
Console.WriteLine(string.Format("Original Number = {0} and New Number = {1}", start, end));