home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 15 / CD_ASCQ_15_070894.iso / vrac / tpchal_1.zip / BG.C < prev    next >
C/C++ Source or Header  |  1994-05-26  |  2KB  |  62 lines

  1. /*
  2. **  Bill Greganti (1:218/905)
  3. */
  4.  
  5. #include <stdio.h>
  6. #include <stdlib.h>
  7.  
  8. int  check (long);
  9.  
  10. main (void)
  11. {
  12.       long number;
  13.  
  14.       for (number = 123456789L; number < 987654321L;)
  15.       {
  16.             if      ((number / 10000000L) % 2 != 0)
  17.                   number +=  10000000L;
  18.             else if ((number /  1000000L) % 3 != 0)
  19.                   number +=   1000000L;
  20.             else if ((number /   100000L) % 4 != 0)
  21.                   number +=    100000L;
  22.             else if ((number /    10000L) % 5 != 0)
  23.                   number +=     10000L;
  24.             else if ((number /     1000L) % 6 != 0)
  25.                   number +=      1000L;
  26.             else if ((number /      100L) % 7 != 0)
  27.                   number +=       100L;
  28.             else if ((number /       10L) % 8 != 0)
  29.                   number +=        10L;
  30.             else if ((number            ) % 9 != 0)
  31.                   number ++           ;
  32.             else if (check (number) == 0)
  33.             {
  34.                   printf ("%lu\n", number++);
  35.                   break;
  36.             }
  37.             else  number++;
  38.       }
  39.       return 0;
  40. }
  41.  
  42. int check (long number)
  43. {
  44.       int x;
  45.       char string[10];
  46.  
  47.       ltoa (number, string, 10);
  48.       for (x = 0; x < 9; x++)
  49.       {
  50.             int y;
  51.             for (y = 8; y > 0 + x; y--)
  52.             {
  53.                   if ((string[x] == string[y]) ||
  54.                         (string[x] == '0') || (string[y] == '0'))
  55.                   {
  56.                         return(1);
  57.                   }
  58.             }
  59.       }
  60.       return(0);
  61. }
  62.