public static void Main(string[] args)
Console.WriteLine("Happy Numbers");
Console.Write("Enter a number: ");
inputNumber = Console.ReadLine();
if (Int32.TryParse(inputNumber, out number) == true)
Console.WriteLine("Zero or negative input is not allowed.");
Console.WriteLine("Invalid input. Please input 1-20,000 only.");
for (int i = 0; i <= 50; i++)
if (number < 10 && number != 1)
else if (number >= 10 && number < 100)
firstDigit = number % 10;
secondDigit = number / 10;
sum = (firstDigit * firstDigit) + (secondDigit * secondDigit);
else if (number >= 100 && number < 1000)
thirdDigit = number / 100;
secondDigit = (number / 10) - (thirdDigit * 10);
firstDigit = number - (thirdDigit * 100) - (secondDigit * 10);
sum = (firstDigit * firstDigit) + (secondDigit * secondDigit) + (thirdDigit * thirdDigit);
else if (number >= 1000 && number < 10000)
firstDigit = number % 10;
secondDigit = number % 10;
thirdDigit = number % 10;
fourthDigit = number % 10;
sum = (firstDigit * firstDigit) + (secondDigit * secondDigit) + (thirdDigit * thirdDigit) + (fourthDigit * fourthDigit);
else if (number >= 1000 && number < 10000)
firstDigit = number % 10;
secondDigit = number % 10;
thirdDigit = number % 10;
fourthDigit = number % 10;
sum = (firstDigit * firstDigit) + (secondDigit * secondDigit) + (thirdDigit * thirdDigit) + (fourthDigit * fourthDigit);
else if (number >= 1-000 && number < 100000)
firstDigit = number % 10;
secondDigit = number % 10;
thirdDigit = number % 10;
fourthDigit = number % 10;
fifthDigit = number % 10;
sum = (firstDigit * firstDigit) + (secondDigit * secondDigit) + (thirdDigit * thirdDigit) + (fourthDigit * fourthDigit) + (fifthDigit * fifthDigit);
Console.WriteLine(inputNumber + " is a happy number.");
Console.WriteLine(inputNumber + " is not a happy number.");
Console.WriteLine("Invalid Input. Please Enter a numeric value.");
Console.Write("Do you want to try again [Y/y]? ");
answer = Console.ReadLine();
} while ((answer == "Y") || (answer == "y"));
Console.WriteLine("End of the program. Press any key to exit...");