Advertisement
dimipan80

Non-Repeating Digits

Dec 2nd, 2014
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.88 KB | None | 0 0
  1. /* Write a PHP script NonRepeatingDigits.php that declares an integer variable N, and then finds
  2. all 3-digit numbers that are less or equal than N (<= N) and consist of unique digits.
  3. Print "no" if no such numbers exist. */
  4.  
  5. <?php
  6. function printAllNumbersWith3UniqueDigits($maxNumber) {
  7.     if ($maxNumber > 987) {
  8.         $maxNumber = 987;
  9.     }
  10.  
  11.     $uniqueNumbers = [];
  12.     for ($i = 102; $i <= $maxNumber; $i++) {
  13.         $last = $i % 10;
  14.         $middle = (int)(($i / 10) % 10);
  15.         $first = (int)(($i / 100) % 10);
  16.         if ($first != $middle && $first != $last && $middle != $last) {
  17.             $uniqueNumbers[] = $i;
  18.         }
  19.     }
  20.  
  21.     if (count($uniqueNumbers)) {
  22.         echo '<p>' . implode(", ", $uniqueNumbers) . "</p>\n";
  23.     } else {
  24.         echo "<p>no</p>\n";
  25.     }
  26. }
  27.  
  28. printAllNumbersWith3UniqueDigits(1234);
  29. printAllNumbersWith3UniqueDigits(145);
  30. printAllNumbersWith3UniqueDigits(15);
  31. printAllNumbersWith3UniqueDigits(247);
  32. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement