Kombinatoriikka, laskuharjoitus I, tehtävä 7

Osoita, että on olemassa sellainen positiivinen kokonaisluku a, että joukossa
{a+1,a+2,…,a+2012}
on tarkalleen kaksikymentä alkulukua.

Suorittamaan ommentojono voi vain jos on jo asenettu ActivePython.


a=1 #ensimmainen a ehdokas
paljonko=2012 #a+1..a+2012
alkulukuja=20 #kuinka paljon alkulukuja?

import sys, math
def isprime(number):  #onko number - alkuluku?
	prime=True
	if number==1: prime=True #jos 1 - niin on
	if number==2: prime=True #jos 2 - niin on
	for x in range (3,number-1,1): #mulloin 3:sta number-1:een

	
		if (divmod(number,x)[1]==0) : # 5/1,5/2,5/3,5/4 - katsotaan jakojannokset
			prime=False	#jos vaikka kerran jakojannos on 0 - ehdokas ei ole alkuluku
			break #eiko tarvitse enaa tarkista sen luvun
		
	return prime #oliko number alkuluku



count=0 #a=1, lasketaan paljonko alkulukuja

while 1==1: #ctrl-break
	
	for x in range (a+1,a+paljonko,1): #kaikki a+1...a+2012
		if (isprime(x)):
			count=count+1 #kuinka paljon alkulukuja?
	
	
	#print x
	if (count==alkulukuja) :print a, a+1, a+paljonko
	a=a+1 #seurava a
	print a, count #tiedoksi
	count=0