Halveringsmetoden – gjett på et tall
Denne siden er lagd med inspirasjon fra et undervisningsopplegg av Tom Jarle Christiansen og Rune Mathisen.
Tenk på et tall ...
Du ber vennen din tenke på et tall mellom 0 og 50. Så gjetter du på et tall, og vennen din sier om det var rett, eller om tallet du gjettet på var for høyt eller for lavt. Så gjetter du en gang til, og vennen din sier på nytt om tallet er rett, for høyt eller for lavt.
Du kan bruke programmet nedenfor som "venn", om du vil. Du trenger ikke å forstå programkoden.
- Du starter programmet ved å trykke på den svarte trekanten () oppe til venstre i venstre halvdel.
- Programmet starter etter hvert, og det "snakker til deg" i den høyre halvdelen.
- Følg instruksjonene du får. Skriv inn tallet du gjetter på, og trykk "Enter".
- Fortsett helt til du får rett svar.
NB: Av og til kan det ta litt tid fra du trykker på avspillingsknappen til programmet blir kjørt.)
Hvor mange ganger må du gjette før du kommer fram til rett svar? Hvordan kommer vi raskest fram til rett svar? Nedenfor er det listet opp noen framgangsmåter.
- Start på 0, og prøv ett og ett tall oppover til du får det rette.
- Start på 0, og prøv hver hele tier oppover til du kommer for høyt, ta deretter ett og ett tall oppover i det aktuelle tierintervallet.
- Start på 0, og prøv hvert 20-tall oppover til du kommer for høyt, ta deretter ett og ett tall i det aktuelle 20-intervallet.
- Start på 0, og prøv hvert 20-tall oppover til du kommer for høyt, prøv deretter tieren midt inne i 20-intervallet for til slutt å ta ett og ett tall i det rette tierintervallet.
Hvilken av disse tror du er best? Den første vil i alle fall ta lang tid ...
Halveringsmetoden
Det finnes en systematisk metode å gjette seg fram til rett svar på som vil være raskest i de fleste tilfeller. Dersom den blir brukt i programmet ovenfor, vil det kunne se slik ut når øvre grense for tall er 50:
Gjetting nr. | Gjetting | Resultat |
---|---|---|
1 | 25 | Tallet du skrev inn er for høyt. |
2 | 12 | Tallet du skrev inn er for lavt. |
3 | 18 | Tallet du skrev inn er for lavt. |
4 | 22 | Tallet du skrev inn er for høyt. |
5 | 20 | Tallet du skrev inn er for høyt. |
6 | 19 | Du gjettet helt rett! |
Oppgave
Hva slags metode er det brukt her? Kan du finne et mønster?
Løsning
Metoden går ut på at vi alltid gjetter på det tallet som ligger midt i det aktuelle intervallet. I starten er intervallet fra og med 0 til og med 50, så da gjetter vi på 25. Når vi får melding om at det er for høyt, vet vi at tallet må ligge i intervallet fra og med 0 til og med 24. Tallet på midten her er 12, så da gjetter vi på det. Slik fortsetter vi.
Oppgave: algoritme for halveringsmetoden
Skriv en algoritme for halveringsmetoden.
Løsningsforslag
- Gjett på det tallet som er i midten av intervallet tallet skal ligge i.
- Dersom tallet er for høyt, sett tallet som ny øvre grense av intervallet.
- Dersom tallet er for lavt, sett tallet som ny nedre grense av intervallet.
- Dersom tallet er rett, er vi i mål.
- Gjør alt om igjen ifra starten helt til tallet er rett.