danfredr Skrevet 21. mai 2004 Del Skrevet 21. mai 2004 Hei. Jeg skal lage et jatzy spill. Men jeg trenger en kode, hvordan ka jeg få pcen til og et tilfeldig tall mellom 1 og 6 og sette det in i text1.text ? Helst en kode som f.eks if blablabla then goto text1 if blablabla then goto text2 if blablabla then goto text3 if blablabla then goto text4 if blablabla then goto text5 if blablabla then goto text6 text1: text1.text = "1" text2: text1.text = "2" text3: text1.text = "3" text4: text1.text = "4" text5: text1.text = "5" text6: text1.text = "6" og så text2 osv... takker på fårhond Lenke til kommentar
aadnk Skrevet 21. mai 2004 Del Skrevet 21. mai 2004 Det er ganske enkelt. Her er koden: Randomize Text1.Text = 1 + (Rnd * 5) Lenke til kommentar
danfredr Skrevet 21. mai 2004 Forfatter Del Skrevet 21. mai 2004 Men hvordan får jeg slik at alle tallene bak komma og komma i seg selv ikke vises ? eller blir vesket bort etter på ? Lenke til kommentar
danfredr Skrevet 21. mai 2004 Forfatter Del Skrevet 21. mai 2004 Jeg fant ut av det... dette blir koden uten desimal. Text1.Text = 1 + Val(Rnd * 6) Lenke til kommentar
d0ppler Skrevet 25. mai 2004 Del Skrevet 25. mai 2004 dette er hvordan jeg hadde gjort det: Randomize Text1.Text = Int(Rnd * 6) + 1 Lenke til kommentar
ThaKladd Skrevet 25. mai 2004 Del Skrevet 25. mai 2004 jeg setter +1 inne i paramtesen jeg da... fungerer fint det også tror jeg... Lenke til kommentar
danfredr Skrevet 11. november 2004 Forfatter Del Skrevet 11. november 2004 men det er ikke akkurat tilfeldige tall... når jeg starter spillet på nytt så kommer akkurat de samme tallene opp på nytt... finnes det noe annet som gir helt tilfeldige og ikke samme tallene etter å ha startet på nytt? Lenke til kommentar
Vain Skrevet 11. november 2004 Del Skrevet 11. november 2004 Randomize Text1.Text = 1 + (Rnd * 5) Randomize gjør at tallene blir helt random Lenke til kommentar
d0ppler Skrevet 11. november 2004 Del Skrevet 11. november 2004 Randomize Text1.Text = 1 + (Rnd * 5) Randomize gjør at tallene blir helt random denne koden er ikke akurat "yatzy-vennlig", siden denne returnerer et desimal tall mellom 1,0000000 til 5,999999999 med denne koden får du et riktig yatzy-resultat: (som vist over) int(rnd * 6) + 1 for de som ikke forstår så skal jeg bryte opp denne linja i litt mer forståelige deler: rnd returnerer et "tilfeldig" tall mellom 0 og 0,99999999 hvis vi da ganger dette tallet med 6 (rnd * 6), så vil dette bli et tall mellom 0 - 5,9999994 deretter så bruker vi int() funksjonen som bare returnerer heltalls verdien av denne summen, så da står vi igjen med et tall mellom 0-5. tilslutt legger vi til 1, siden den laveste verdien på en yatzy terning er 1. sikkert mange som forstod dette, men jeg husker fra min tid på skolebenken så var det ufattelig mange som EGENTLIG ikke forstod hva rnd-funksjonen gjorde. Lenke til kommentar
GeirGrusom Skrevet 13. november 2004 Del Skrevet 13. november 2004 Ville bar legge til hva Randomize gjør Randomize setter random seed til en verdi, derfor, "randomize 1 : Debug.Print Rnd" vil gi samme verdi hver gang. Randomize uten noen verdi vil gi samme resultat som Randomize Timer i QB. 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å