Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def prime_number(number):
- if number < 2: return(False)
- elif number == 2: return(True)
- i = 2
- limit = int(number**.5)
- while i <= limit:
- if number % i == 0:
- return(False)
- i += 1
- return(True)
- def search_denominators(number):
- answer = []
- while True:
- for num in range(2, number + 1):
- if prime_number(num) and not (number % num):
- answer.append(num)
- if prime_number(number / num):
- answer.append(int(number / num))
- return(answer)
- number = int(number / num)
- break
- else: return(answer)
- def check_prime_denominators(prime_den):
- n = 0
- while n < len(prime_den) - 1:
- if prime_den[n] == prime_den[n + 1]:
- return(False)
- else: n += 1
- return(True)
- a, b = map(int, input().split())
- if a < 4: a = 4
- composite_numbers = [x for x in range(a, b+1) if not prime_number(x)]
- answer = []
- for number in composite_numbers:
- denominators = search_denominators(number)
- if check_prime_denominators(denominators):
- answer.append(number)
- if answer: print(*sorted(answer))
- else: print('NO')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement