Læringsmål:
- For-løkker
- PLACEHOLDER
Pensum:
- PLACEHOLDER
I denne oppgaven skal du lage en funksjon isprime(a) som tar inn tallet a og returnerer True om det er et primtall, eller False om det ikke er.
a)
Skriv en funksjon som returnerer True om parameteren a er delelig med b. Hint: En modulo-operasjon (mod(a,b)) blir brukt i informatikk og i matematikk til å finne resten av et opprinnelig heltall etter en divisjon med et annet tall. Eks.: mod(5,2) = 1
b)
Lag funksjon med en for løkke som itererer fra b = 2,3,...,a-1 og bruker funksjonen fra forrige oppgave for å sjekke om a det er delelig med b. Om de er delelige avslutter du og returnerer 0. Ellers skal du returnere 1.
c)
Algoritmen skal nå gjøres raskere ved hjelp av 2 små inngrep:
- Du skal nå bare iterere deg gjennom oddetall. Men du må fortsatt sjekke om a er delelig med 2. Hint: i = (2*k+1), da er i oddetall for all k.
- Isteden for å gå helt til i = a-1, skal du nå avslutte når i > round(sqrt(a)+0.5)