Seuraava toteutus perustuu taulukkoon a, jossa on paikka jokaiselle luvulle väliltä 2–n. Algoritmin alussa taulukon jokainen arvo on 0, ja algoritmi merkitsee arvon 1 luvuille, jotka eivät ole alkulukuja. Sisemmässä silmukassa step i tarkoittaa, että muuttujan arvo kasvaa i:llä joka kierroksella.
a
step i
i
count = 0 for i = 2 to n if a[i] == 0: count++ for j = 2*i to n step i a[j] = 1 print(count)
Toteuta algoritmi pseudokoodin perusteella Javalla tai Pythonilla ja vastaa sitten seuraaviin kysymyksiin:
Kun n = 10000, algoritmi antaa tuloksen ja aikaa kuluu sekuntia.
Kun n = 100000, algoritmi antaa tuloksen ja aikaa kuluu sekuntia.
The deadline for this task has passed but you can still check your answers