Advertisement
WindFell

Master Number

Mar 21st, 2018
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.42 KB | None | 0 0
  1. sing System;
  2.  
  3. class MasterNumbers
  4. {
  5.     static void Main(string[] args)
  6.     {
  7.         int lastNumber = int.Parse(Console.ReadLine());
  8.  
  9.         for (int number = 1; number <= lastNumber; number++)
  10.         {
  11.             if (IsPalindrome(number) && IsSumOfDigitsDivisibleBySeven(number) && ContainsEvenDigit(number))
  12.             {
  13.                 Console.WriteLine(number);
  14.             }
  15.         }
  16.     }
  17.  
  18.     private static bool ContainsEvenDigit(int number)
  19.     {
  20.         while(number > 0)
  21.         {
  22.             int lastDigit = number % 10;
  23.             if (lastDigit % 2 == 0)
  24.             {
  25.                 return true;
  26.             }
  27.             number /= 10;
  28.         }
  29.         return false;
  30.     }
  31.  
  32.     private static bool IsSumOfDigitsDivisibleBySeven(int number)
  33.     {
  34.         int sum = 0;
  35.  
  36.         while (number > 0)
  37.         {
  38.             sum += number % 10;
  39.             number /= 10;
  40.         }
  41.  
  42.         if (sum % 7 == 0)
  43.         {
  44.             return true;
  45.         }
  46.  
  47.         return false;
  48.  
  49.     }
  50.  
  51.     private static bool IsPalindrome(int number)
  52.     {
  53.         int reversedNumber = 0;
  54.         int oldNumber = number;
  55.  
  56.         while (number > 0)
  57.         {
  58.             reversedNumber *= 10;
  59.             reversedNumber += number % 10;
  60.             number /= 10;
  61.         }
  62.  
  63.         if (reversedNumber == oldNumber)
  64.         {
  65.             return true;
  66.         }
  67.  
  68.         return false;
  69.     }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement