Advertisement
Guest User

Bad FizzBuzz

a guest
Mar 26th, 2019
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function contains(arr, ele) {
  2.     for (var i = 0; i < arr.length; i++) {
  3.     if (arr[i] === ele) {
  4.         return true;
  5.     }
  6.   }
  7.  
  8.   return false;
  9. }
  10.  
  11. function isFizz(num) {
  12.     var threeMultiple = 0;
  13.  
  14.   while (threeMultiple < 100) {
  15.     threeMultiple += 3;
  16.     if (threeMultiple === num) {
  17.         return true;
  18.     }
  19.   }
  20.    
  21.   return false;
  22. }
  23.  
  24. function isBuzz(num) {
  25.     var numStringArray = num.toString().split('');
  26.   return numStringArray[ numStringArray.length - 1 ] === '0' || numStringArray[ numStringArray.length - 1 ] === '5';
  27. }
  28.  
  29. function isFizzBuzz(num) {
  30.     return isFizz(num) && isBuzz(num);
  31. }
  32.  
  33. function sleepSortedOutput(num, status) {
  34.     setTimeout(function (number, statusString) {
  35.     console.log(number + ': ' + statusString);
  36.   }, 50 * num, num, status);
  37. }
  38.  
  39. var usedNumbers = [];
  40.  
  41. while (usedNumbers.length < 100) {
  42.     var candidateNumber = Math.floor(Math.random() * 100) + 1;
  43.   if (contains(usedNumbers, candidateNumber)) {
  44.     continue;
  45.   }
  46.  
  47.   usedNumbers.push(candidateNumber);
  48.  
  49.   if (isFizzBuzz(candidateNumber)) {
  50.     sleepSortedOutput(candidateNumber, 'FizzBuzz');
  51.   } else if (isFizz(candidateNumber)) {
  52.     sleepSortedOutput(candidateNumber, 'Fizz');
  53.   } else if (isBuzz(candidateNumber)) {
  54.     sleepSortedOutput(candidateNumber, 'Buzz');
  55.   } else {
  56.     sleepSortedOutput(candidateNumber, '');
  57.   }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement