Goldbach's Conjecture (Due 12 October 2012)

In 1742, a German amateur mathematician named Christian Goldbach wrote to Leonhard Euler with the following conjecture:

Every number greater than 2 can be written as the sum of three prime numbers.

In his conjecture, Goldbach was considering 1 as a prime number. By convention we no longer consider 1 as a prime number. And Euler later modified the conjecture as follows:

Every even number greater than or equal to 4 can be expressed as the sum of two prime numbers.

For example:

There is no formal proof of this conjecture. However, we can verify Goldbach's conjecture in certain ranges. For this programming assignment you are asked to verify Goldbach's conjecture in a user defined range. You will prompt the user to enter the range and then your program will print out all the even numbers in that range (inclusive of the end points) in the form n = a + b, where a and b are prime numbers and a <= b. Each even number should be on a separate line followed by all possible unique pairs of prime numbers. Your sample output should look like this:

Enter the range of numbers: 4, 100
4 = 2 + 2
6 = 3 + 3
8 = 3 + 5
10 = 3 + 7 = 5 + 5
....
....
100 = ....

Your program should have a good, clean logical structure. You must make use of function isPrime() that we developed in class. We will be looking at good documentation, descriptive variable names, and adherence to the coding convention mentioned below. Your file Goldbach.py will have the following header:


#  File: Goldbach.py

#  Description:

#  Student Name:

#  Student UT EID:

#  Course Name: CS 303E

#  Unique Number: 

#  Date Created:

#  Date Last Modified:

Use the turnin program to submit your Goldbach.py file. The TAs should receive your work by 11 PM on Friday, 12 October 2012. There will be substantial penalties if you do not adhere to the guidelines. The TA in charge of this assignment is Jia Chen (jchen@cs.utexas.edu).