-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGoldbach Conjecture
72 lines (46 loc) · 2.11 KB
/
Goldbach Conjecture
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
## Name: Jaewon Son
## Date: September 24 2023
## Honor Statement: I have not given or received any unauthorized assistance on this assignment.
## Link: https://youtu.be/KNY-E2rbzio
def greet_to_user():
"""Function to greet to user.
"""
print("\nWelcome to Goldbach Conjecture Test!")
print("\nYou can check below that the every even integer consist of the two primes.\n")
def is_prime_number():
"""Find prime numbers and put the numbers is a list.
Returns:
list: Return list of the prime numbers.
"""
prime_list = [] # List for prime numbers
for num in range(2, 100):
if num == 2 or num == 3: # 2 and 3 are prime numbers
prime_list.append(num)
continue
else:
for divisor in range(2, num): # Loop to check the num is a prime or not
if num % divisor == 0:
break
else:
prime_list.append(num)
return prime_list
def test_goldbach_conjecture(numbers_in_prime_list):
"""Shows that even numbers are made up of the sum of two primes.
"""
for test_number in range(4, 101):
if test_number % 2 == 0: # Goldbach conjecture is for even numbers
prime_number1 = (test_number // 2) # Start calculating from half of the test_number
while True:
prime_number2 = test_number - prime_number1 # Sum of the prime_number1 and prime_number2 is same as test_number
if (prime_number1 in numbers_in_prime_list) and (prime_number2 in numbers_in_prime_list): # Checking prime_number1 and prime_number2 are including in the numbers_in_prime_list
print(f"{test_number} = {int(prime_number1)} + {int(prime_number2)}")
break
else:
prime_number1 -= 1
def main_function():
"""Main function for Goladbach conjecture test.
"""
greet_to_user()
numbers_in_prime_list = is_prime_number()
test_goldbach_conjecture(numbers_in_prime_list)
main_function()