Advertisement
dimipan80

C#Exams 4. Nine-Digit Magic Numbers (on Java Code)

Aug 21st, 2014
248
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.66 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class _4_NineDigitMagicNumbers {
  4.  
  5.     public static void main(String[] args) {
  6.         // TODO Auto-generated method stub
  7.         Scanner scan = new Scanner(System.in);
  8.         int givenSum = scan.nextInt();
  9.         int givenDiff = scan.nextInt();
  10.  
  11.         boolean foundMagicNums = false;
  12.         if (givenSum >= 9 && givenSum <= 63 && givenDiff <= 333) {
  13.             foundMagicNums = findAndPrint9DigitMagicNumbers(givenSum,
  14.                     givenDiff);
  15.         }
  16.  
  17.         if (!foundMagicNums) {
  18.             System.out.println("No");
  19.         }
  20.     }
  21.  
  22.     private static boolean findAndPrint9DigitMagicNumbers(int sum, int diff) {
  23.         // TODO Auto-generated method stub
  24.         boolean haveNumbers = false;
  25.         int d1, d2, d3, d4, d5, d6, d7, d8, d9;
  26.         int abc, def, ghi, sumDigits;
  27.         for (d1 = 1; d1 < 8; d1++) {
  28.             for (d2 = 1; d2 < 8; d2++) {
  29.                 for (d3 = 1; d3 < 8; d3++) {
  30.                     for (d4 = 1; d4 < 8; d4++) {
  31.                         for (d5 = 1; d5 < 8; d5++) {
  32.                             for (d6 = 1; d6 < 8; d6++) {
  33.                                 abc = (d1 * 100) + (d2 * 10) + d3;
  34.                                 def = (d4 * 100) + (d5 * 10) + d6;
  35.                                 if (def - abc == diff) {
  36.                                     for (d7 = 1; d7 < 8; d7++) {
  37.                                         for (d8 = 1; d8 < 8; d8++) {
  38.                                             for (d9 = 1; d9 < 8;d9++) {
  39.                                                      ghi = (d7 * 100) + (d8 * 10) + d9;
  40.                                                     if (ghi - def == diff) {
  41.                                                    sumDigits = d1 + d2 + d3 + d4 + d5 + d6                                                  + d7 + d8 + d9;
  42.                                                  if (sumDigits == sum) {
  43.                                                                   System.out.println("" + abc + def + ghi);
  44.                                             haveNumbers = true;
  45.                                                     }
  46.                                                 }
  47.                                             }
  48.                                         }
  49.                                     }
  50.                                 }
  51.                             }
  52.                         }
  53.                     }
  54.                 }
  55.             }
  56.         }
  57.  
  58.         return haveNumbers;
  59.     }
  60.  
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement