alboig

GoodNumbers - JavascriptModule0

Apr 14th, 2020
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Добри числа
  2. // Иванчо нарича едно число добро, ако то се дели на всяка негова цифра различна от 0.
  3. // Например: - 13 не е добро - не се дели на 3 - 36 е добро - дели се на 3 и на 6 - 102 e добро - дели се на 1 и на 2 - 103 не е добро - не се дели на 3
  4. // Помогнете на Иванчо като напишете програма, която намира броя на всички добри числа между дадени A и B (включително).
  5. // Вход
  6. // От първия ред се въвеждат числата A и B.
  7. // Изход
  8. // Изведете броя на добрите числа на единствен ред.
  9. // Ограничения
  10. // 1 <= A <= B <= 100000
  11. // Примери
  12. // Вход Изход
  13. // 1 10 10
  14. // 42 142 29
  15. // 256 768 50
  16. const input = ['42 14442'];
  17. const print = this.print || console.log;
  18. const gets = this.gets || ((arr, index) => () => arr[index++])(input, 0);
  19. const intervalArray = gets().split(' ');
  20. const firstNum = +intervalArray[0];
  21. const secondNum = +intervalArray[1];
  22. let countOfGoodNumbers = 0;
  23. function isItGood (num) {
  24.   const arrayOfDigits = [];
  25.   let isGood;
  26.   for (let j = 0; j < String(num).length; j++) {
  27.     if (String(num)[j] !== '0') {
  28.       arrayOfDigits.push((String(num))[j]);
  29.     }
  30.   }
  31.   for (let j = 0; j < arrayOfDigits.length; j++) {
  32.     if (num % Number(arrayOfDigits[j]) === 0) {
  33.       isGood = true;
  34.     } else {
  35.       isGood = false; break;
  36.     }
  37.   }
  38.   return isGood;
  39. }
  40. for (let i = firstNum; i <= secondNum; i++) {
  41.   if (isItGood(i) === true) {
  42.     countOfGoodNumbers++;
  43.   }
  44. }
  45. print(countOfGoodNumbers);
Advertisement
Add Comment
Please, Sign In to add comment