Advertisement
Guest User

Untitled

a guest
Jan 19th, 2020
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. def prime_number(number):
  2. if number < 2: return(False)
  3. elif number == 2: return(True)
  4. i = 2
  5. limit = int(number**.5)
  6. while i <= limit:
  7. if number % i == 0:
  8. return(False)
  9. i += 1
  10. return(True)
  11.  
  12. def search_denominators(number):
  13. answer = []
  14. while True:
  15. for num in range(2, number + 1):
  16. if prime_number(num) and not (number % num):
  17. answer.append(num)
  18. if prime_number(number / num):
  19. answer.append(int(number / num))
  20. return(answer)
  21. number = int(number / num)
  22. break
  23. else: return(answer)
  24.  
  25. def check_prime_denominators(prime_den):
  26. n = 0
  27. while n < len(prime_den) - 1:
  28. if prime_den[n] == prime_den[n + 1]:
  29. return(False)
  30. else: n += 1
  31. return(True)
  32.  
  33. a, b = map(int, input().split())
  34. if a < 4: a = 4
  35. composite_numbers = [x for x in range(a, b+1) if not prime_number(x)]
  36. answer = []
  37.  
  38. for number in composite_numbers:
  39. denominators = search_denominators(number)
  40. if check_prime_denominators(denominators):
  41. answer.append(number)
  42.  
  43. if answer: print(*sorted(answer))
  44. else: print('NO')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement