Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Reflection.Metadata.Ecma335;
- namespace PalindromicNumberTask
- {
- /// <summary>
- /// Provides static method for working with integers.
- /// </summary>
- public static class NumbersExtension
- {
- /// <summary>
- /// Determines if a number is a palindromic number, see https://en.wikipedia.org/wiki/Palindromic_number.
- /// </summary>
- /// <param name="number">Verified number.</param>
- /// <returns>true if the verified number is palindromic number; otherwise, false.</returns>
- /// <exception cref="ArgumentException"> Thrown when source number is less than zero. </exception>
- public static int IntLength(int number)
- {
- int length = 0;
- do
- {
- length++;
- number /= 10;
- }
- while (number != 0);
- return length;
- }
- public static bool IsPalindromicNumber(int number)
- {
- if (IntLength(number) < 2)
- {
- return true;
- }
- if (number / Math.Pow(10, IntLength(number) - 1) != number % 10)
- {
- return false;
- }
- return IsPalindromicNumber((int)(number % Math.Pow(10, IntLength(number) - 1)) / 10);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement