InjB Skrevet 6. september 2008 Del Skrevet 6. september 2008 (endret) Heisann! Jeg lager et gjetteprogram/spill og trenger litt hjelp. Mitt problem er; jeg har en tekstboks, der skriver du et tall mellom 1 og 100. så skal datamaskinen gjette hvilket du tenker på. Du har to knapper som heter Høyere og Lavere. Når datamaskinen gjetter for lavt, trykker du høyere, og omvendt. Koden jeg bruker til det: RandomNumber = RandomClass.Next((RandomNumber), 101) ' Høyere knappen RandomNumber = RandomClass.Next(1, (RandomNumber)) ' Lavere knappen Problemet her er jo jo; 1: Den kan gjette samme tall flere ganger. 2: Hvis jeg først trykker høyere knappen, og så lavere knappen, så husker den ikke hva den gjettet sist, derfor blir det mye rot. Noen som gidder å hjelpe? Kanskje litt dårlig forklart men... Endret 8. september 2008 av InjB Lenke til kommentar
Manfred Skrevet 7. september 2008 Del Skrevet 7. september 2008 adde alle "gjettede" tall til en List<int> og kjøre en løkke så lenge listen .Contains() det tallet som gjettes... Lenke til kommentar
duckers Skrevet 8. september 2008 Del Skrevet 8. september 2008 Lag deg to variabler som du kaller høy og lav, så lar du programmet generere tall mellom disse to variablene og oppdaterer variablene avhengig av hvordan du svarte sist. Trykker du på knappen høyere legges det siste tallet den skrev ut i lav (den nedre grensen). til slutt vil du stå igjen med et lite intervall, feks 49 - 51, og det er ikke så vanskelig å gjette riktig tall.. Lenke til kommentar
InjB Skrevet 8. september 2008 Forfatter Del Skrevet 8. september 2008 Takk for svar, den metoden du sa nå jeg bruker, bare fikk den fra et annet forum ^^ Lenke til kommentar
HDSoftware Skrevet 17. september 2008 Del Skrevet 17. september 2008 Takk for svar, den metoden du sa nå jeg bruker, bare fikk den fra et annet forum ^^ Og begynn alltid på midten for å få færrest mulig gjettinger. Du vil bli overrasket hvor lite som skal til for å gjette et tall mellom 1 og 16000000 ;-) Eksempel på tall mellom 1 og 128 Du tenker på 37 Hvis du trykker HØY og LAV på rett sted vill tall gjettingen være som følger: 64, 32, 48, 40, 36, 38 og til slutt 37. Altså 7 gjettinger. Øker du til 256 (8 bit) så vil du ha maks 8 gjettinger og tallrekka vil i så fall være: 128, 64, 32, 48, 40, 36, 38, 37 Tenk deg en Long64, altså 64 bit. Den kan representere et hvilket som helst tall mellom 1 og 18446700000000000000 (sånn cirka) Programmet ditt vil gjette rett tall i løpet av maks 64 gjettingsforsøk. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå