Är det ett primtal: Skillnad mellan sidversioner
Hoppa till navigering
Hoppa till sök
Hakan (diskussion | bidrag) Ingen redigeringssammanfattning |
Hakan (diskussion | bidrag) (→Koden) |
||
(En mellanliggande sidversion av samma användare visas inte) | |||
Rad 8: | Rad 8: | ||
Målet är inte att du ska lära dig programmering på matematiklektionen men det är oundvikligt att du ändå lär dig lite Python-kod. | Målet är inte att du ska lära dig programmering på matematiklektionen men det är oundvikligt att du ändå lär dig lite Python-kod. | ||
}} | }} | ||
== Uppgift == | |||
Man kan antingen använda programmet som intro till en lektion om primtal i Ma1c. Det tar inte många minuter men vänjer eleverna vid att köra program. | |||
Eller så arbetar man med att undersöka och förbättra algoritmen vilket tar betydligt mer tid. | |||
== Koden == | |||
Vi använder en funktion som testar om tal är ett primtal. Resten av koden är för inmatning och utmatning av resultatet. | Vi använder en funktion som testar om tal är ett primtal. Resten av koden är för inmatning och utmatning av resultatet. | ||
Rad 14: | Rad 22: | ||
def prime(input): | def prime(input): | ||
for n in range(2, input): | for n in range(2, input): | ||
if input%n == 0: | if input % n == 0: | ||
return False | return False | ||
return True | return True | ||
tal = int(input("Ange ett tal")) | tal = int(input("Ange ett tal ")) | ||
if (prime(tal) == True): | if (prime(tal) == True): | ||
print(tal, "är ett primtal") | print(tal, " är ett primtal") | ||
else: | else: | ||
print(tal, "är inte ett primtal") | print(tal, " är inte ett primtal") | ||
</pre> | </pre> | ||
För att förbättra algoritmen, se diskussionssidan. | För att förbättra algoritmen, se diskussionssidan. |
Nuvarande version från 5 april 2018 kl. 09.46
Uppgift
Man kan antingen använda programmet som intro till en lektion om primtal i Ma1c. Det tar inte många minuter men vänjer eleverna vid att köra program.
Eller så arbetar man med att undersöka och förbättra algoritmen vilket tar betydligt mer tid.
Koden
Vi använder en funktion som testar om tal är ett primtal. Resten av koden är för inmatning och utmatning av resultatet.
def prime(input): for n in range(2, input): if input % n == 0: return False return True tal = int(input("Ange ett tal ")) if (prime(tal) == True): print(tal, " är ett primtal") else: print(tal, " är inte ett primtal")
För att förbättra algoritmen, se diskussionssidan.