Advertisement
Guest User

Untitled

a guest
Oct 8th, 2017
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.93 KB | None | 0 0
  1. using System;
  2.  
  3. namespace _12.MasterNumber
  4. {
  5.     class Program
  6.     {
  7.         static void Main()
  8.         {
  9.             long endNumber = long.Parse(Console.ReadLine());
  10.             for (long number = 1; number <= endNumber; number++)
  11.             {
  12.                 bool isSumDivisibleBySeven = IsSumDivisibleBySeven(number);
  13.                 bool isSymmetric = IsSymmetric(number);
  14.                 bool isAtLeastOneDigitEven = IsAtLeastOneEvenDigit(number);
  15.  
  16.                 if (isSumDivisibleBySeven && isSymmetric && isAtLeastOneDigitEven)
  17.                 {
  18.                     Console.WriteLine(number);
  19.                 }
  20.             }
  21.  
  22.  
  23.         }
  24.         static bool IsSumDivisibleBySeven(long number)
  25.         {
  26.             int sum = 0;
  27.             while (number > 0)
  28.             {
  29.                 long digit = 0;
  30.                 digit = number % 10;
  31.                 number = number / 10;
  32.                 sum += (int)digit;
  33.             }
  34.             if (sum % 7 == 0)
  35.             {
  36.                 return true;
  37.             }
  38.             return false;
  39.         }
  40.  
  41.         static bool IsSymmetric(long number)
  42.         {
  43.             long normalNumber = number;
  44.             long reverse = 0;
  45.             while (normalNumber > 0)
  46.             {
  47.                 long digit = normalNumber % 10;
  48.                 reverse = reverse * 10 + digit;
  49.                 normalNumber = normalNumber / 10;
  50.             }
  51.  
  52.             if (reverse == number)
  53.             {
  54.                 return true;
  55.             }
  56.             return false;
  57.         }
  58.  
  59.         static bool IsAtLeastOneEvenDigit(long number)
  60.         {
  61.             while (number > 0)
  62.             {
  63.                 long digit = 0;
  64.                 digit = number % 10;
  65.                 number = number / 10;
  66.                 if (digit % 2 == 0)
  67.                 {
  68.                     return true;
  69.                 }
  70.             }
  71.             return false;
  72.         }
  73.     }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement