# The following code will print the prime numbers between 1 and 100. Modify the code so it prints every other prime number from 1 to 100

### Original Code

``````

In [2]:

for num in range(1,101): # for-loop through the numbers
prime = True # boolean flag to check the number for being prime
for i in range(2,num): # for-loop to check for "primeness" by checking for divisors other than 1
if (num%i==0): # logical test for the number having a divisor other than 1 and itself
prime = False # if there's a divisor, the boolean value gets flipped to False
if prime: # if prime is still True after going through all numbers from 1 - 100, then it gets printed
print(num)

``````
``````

1
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

``````

### Modified Code

``````

In [3]:

count=0 # We take a count variable that counts the number of prime in the loop.
for num in range(1,101):
prime = True
for i in range(2,num):
if (num%i==0):
prime = False #
if prime:
count=count+1 #If the count variable is not divisible by two, only then the number is printed.
if (count%2!=0): #Thereby printing only every other prime number.
print(num)

``````
``````

1
3
7
13
19
29
37
43
53
61
71
79
89

``````

# Extra Credit: Can you write a procedure that runs faster than the one above?

``````

In [5]:

for num in range(1,101):
if all(num%i!=0 for i in range(2,num)):
print(num)

``````
``````

1
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

``````
``````

In [ ]:

``````