Är det ett primtal: Skillnad mellan sidversioner
Hoppa till navigering
Hoppa till sök
Hakan (diskussion | bidrag) |
Hakan (diskussion | bidrag) (→Koden) |
||
(10 mellanliggande sidversioner av samma användare visas inte) | |||
Rad 1: | Rad 1: | ||
[[Kategori:Python]] [[Kategori:Ma1c]] [[Kategori:Aritmetik]] [[Kategori:Årskurs 7-9]] | |||
{{python|[[Python|Python-hjälp]]}} | |||
{{malruta| '''Kom igång med programmering i matematiken.''' | |||
Målet är att du ska köra enkla färdiga program för att utföra matematiska beräkningar. | |||
Du bör testa att modifiera algoritmen så att dina beräkningar blir mer effektiva. | |||
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. | |||
<pre> | <pre> | ||
def prime(input): | def prime(input): | ||
for n in | 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 ")) | |||
if (prime(tal) == True): | |||
print(tal, " är ett primtal") | |||
else: | |||
print(tal, " är inte ett primtal") | |||
</pre> | </pre> | ||
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.