Gissa talet: Skillnad mellan sidversioner

Från Wikiskola
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
 
(12 mellanliggande sidversioner av samma användare visas inte)
Rad 1: Rad 1:
[[Kategori:Python]]  
[[Kategori:Python]] [[Kategori:Ma1c]] [[Kategori:Aritmetik]]  [[Kategori:Årskurs 7-9]]  
{{python|[[Python|Python-hjälp]]}}
{{python|[[Python|Python-hjälp]] [https://wikiskola.se/index.php?title{{=}}Kategori:Python Fler uppgifter]}}
{{malruta| '''Kom igång med programmering i matematiken.'''
{{malruta| '''Kom igång med programmering i matematiken.'''


Rad 10: Rad 10:


== Gissa talet ==
== Gissa talet ==
{{uppgruta| '''Gissa ett tal'''
# Kör programmet tillsammans med en kompis.
# Kör det flera gånger.
# Vilken strategi ger minst antal gissningar?
# Finns det ett maximalt antal gissningar om man följer strategin?
# Hur kan du uttrycka maximala antalet gissningar som en funktion av intervallet talet ligger i?
}}


== Python-koden ==
== Python-koden ==
<pre>
<pre>
# förklarar syftet med spelet
print("Detta spel handlar om att gissa det tal som din kamrat matar in. Du kan alltid avbryta programmet genom att skriva 'exit'.")
# Ange ett tal
# Ange ett tal
number = input("Ange ett tal mellan 1 - 100. ")
number = input("Ange ett tal mellan 1 - 100. ")


# Använd heltal
# använd heltal
number = int(number)
number = int(number)


# Räknare
# räknare
guess = 0  
guess = 0
count = 0
count = 0


# Loop som använder räknare
# räknare
while guess != number and guess !="exit":
while guess != number:


# Skriver ut text
# gissa talet
     guess = input("Gissa det tal som din kamrat angav. ")
     guess = input ("Gissa talet som din kamrat har angett: ")
    if guess == "exit":
        break
# räkna gissningar
     guess = int(guess)
     guess = int(guess)
# Räknar antalet gissningar
     count += 1
     count += 1
 
     
# Jämför
# jämför gissning med tal
    if guess == "exit":
        break
     if guess < number:
     if guess < number:
         print("Talet du angav är mindre än det sökta talet.")
         print("Talet du angav ar mindre an det sökta talet.")
     elif guess > number:
     elif guess > number:
         print("Talet du angav är större än det sökta talet.")
         print("Talet du angav ar större an det sökta talet.")
     else:
     else:
         print("Grattis du har gissat talet som din kamrat angav. ")
         print("Grattis! Du har gissat talet som din kamrat har angett.")
         print("Talet är:: ", number)
         print("Talet är:",number,)      
         print("Det har tagit dig", count, "gissningar. ")
         print("Och det har tagit dig",count,"gissningar.")
          
          
# visar resultatet så länge vi vill
input("Tryck Enter för att avsluta programmet")


# Resultatet visas så länge vi vill
input ("Tryck Enter för att avsluta programmet")
</pre>
</pre>




Koden kommer från Atilla Szabo, Utbildningsförvaltningen Stockholm.
Uppgiften är inspirerad av Attila Szabo, Utbildningsförvaltningen Stockholm.

Nuvarande version från 16 oktober 2020 kl. 07.25

Programmeringsuppgift

Python-hjälp Fler uppgifter

Mål för undervisningen Kom igång med programmering i matematiken.

Målet är att du ska köra ditt första 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.


Gissa talet

Uppgift
Gissa ett tal
  1. Kör programmet tillsammans med en kompis.
  2. Kör det flera gånger.
  3. Vilken strategi ger minst antal gissningar?
  4. Finns det ett maximalt antal gissningar om man följer strategin?
  5. Hur kan du uttrycka maximala antalet gissningar som en funktion av intervallet talet ligger i?


Python-koden

# förklarar syftet med spelet
print("Detta spel handlar om att gissa det tal som din kamrat matar in. Du kan alltid avbryta programmet genom att skriva 'exit'.")

# Ange ett tal
number = input("Ange ett tal mellan 1 - 100. ")

# använd heltal
number = int(number)

# räknare
guess = 0
count = 0

# räknare
while guess != number:

# gissa talet
    guess = input ("Gissa talet som din kamrat har angett: ")
    if guess == "exit":
        break
# räkna gissningar
    guess = int(guess)
    count += 1
       
# jämför gissning med tal
    if guess < number:
        print("Talet du angav ar mindre an det sökta talet.")
    elif guess > number:
        print("Talet du angav ar större an det sökta talet.")
    else:
        print("Grattis! Du har gissat talet som din kamrat har angett.")
        print("Talet är:",number,)        
        print("Och det har tagit dig",count,"gissningar.")
        
# visar resultatet så länge vi vill 
input("Tryck Enter för att avsluta programmet")


Uppgiften är inspirerad av Attila Szabo, Utbildningsförvaltningen Stockholm.