Diskussion:Gissa talet: Skillnad mellan sidversioner

Från Wikiskola
Hoppa till navigering Hoppa till sök
 
(2 mellanliggande sidversioner av samma användare visas inte)
Rad 15: Rad 15:
* Led in diskussionen på potenser av 2.
* Led in diskussionen på potenser av 2.


=== Kodförbättringsförslag ===
== Kodutvecklingsdiskussion ==
 
Per Persson ställde följande relevanta fråga:
 
Fungerar verkligen programmet?
 
Du läser in en sträng och lägger den i 'guess' som du sedan konverterar till 'int'.
Men sedan jämför du variabelns värde, som alltså är en 'int', med strängen "exit".
Detta borde ge ett fel.
 
<pre>
# Korrigerad version
 
# Ange ett tal
number = input("Ange ett tal mellan 1 - 100. ")
 
# Använd heltal
number = int(number)
 
# Räknare
guess = 0
count = 0
 
# Loopa tills vi avbryter
while True:
 
# Skriver ut text
    guess = input("Gissa det tal som din kamrat angav. ")
    if guess == "exit":
        break
       
    guess = int(guess)
 
    # Räknar antalet gissningar
    count += 1
 
    # Jämför
    if guess < number:
        print("Talet du angav är mindre än det sökta talet.")
    elif guess > number:
        print("Talet du angav är större än det sökta talet.")
    else:
        print("Grattis du har gissat talet som din kamrat angav. ")
        print("Talet är: ", number)
        print("Det har tagit dig", count, "gissningar. ")
        break   
 
# Resultatet visas så länge vi vill
input ("Tryck Enter för att avsluta programmet")
</pre>

Nuvarande version från 12 oktober 2020 kl. 20.36

Betrakta koden för programmet på sidan

  1. Vilka variabler finns i programmet?
  2. Vilka värden kan heltalen anta?
  3. Vad är syftet och vad händer med variablerna som finns i programmet?
  4. Vilka är programmets huvuddelar och vad händer i respektive del?
  5. Vad är syftet med programmet?
  6. Vilken sorts matematisk kunskap kan eleverna tillgodogöra sig om de kör programmet ett antal gånger

Didaktiskt tips

  • Eleverna hittar strategin att halvera intervallet.
  • Diskutera maximala antalet intervall eller gissningar
  • Rita och diskutera
  • Diskutera hur delning med två upprepade gånger är ekvivalent med upphöjt i två
  • Led in diskussionen på potenser av 2.

Kodutvecklingsdiskussion