Avatar billede Djurstar Nybegynder
14. maj 2009 - 13:28 Der er 2 kommentarer

Hjælp til skole projekt

Hej

Jeg er i gang med et selvvalgt projekt i skolen. Jeg vil gerne lave en slags tal geneator til banko(bingo?).
Indtil videre er jeg godt i gang og jidtil har det lykkes mig at få programmet til at køre efter hensigten, men jeg har et lille problem.

Jeg har brugt Math.floor(Math.random() til at generer mine tal, men den trækker det samme tal igen. Jeg kunne godt tænke mig at den ikke træk et tal den tidligere havde trukket, men jeg er virkelig på bar bund her.

er der nogen der kan hjælpe med det?

På forhånd tak for hjælpen
Djurstar
Avatar billede superanden Nybegynder
14. maj 2009 - 13:38 #1
Overordnet set vil jeg sige der er mange måder du kan lave det på, alle kræver at du "husker" hvilke tal der er kommet i forvejen og benytter derfor en liste til at holde styr på hvilke der er kommet

1) Lav en liste at tal (i et Array eller en ArrayList) i numerisk rækkefølge {1,2,3,4,....,52}

Herefter bruger du random funktionen til at lave et tilfældigt tal. Det tal bruger du til at hive dit "tilfældig valgte element" ud af arraylisten og smider det op i toppen. Gentag denne process f.eks. 1000 gange og du har en liste med dine tal som er blandet godt på forhånd.

2) Du bruger som du gør nu math.random til at lave dit tal, hver gang du har vist et tal gemmer du det i en arraylist. Når du genererer et nyt tal tester du på din arrayliste om det element du har fået ud af math.random() allerede eksisterer i din liste, hvis det gør det så lave du et nyt tal og ellers viser du det tal der er komme ud.

Jeg vil meget gerne lave kode eksempler men så går ideen med at det skal være et skoleprojekt nok lidt ud af det så spørg endelig hvis der er noget du ikke forstår.
Avatar billede Djurstar Nybegynder
14. maj 2009 - 13:40 #2
Ja det har du fuldstændig ret i.

Jeg tror jeg har forstået hvad du mener. Mange tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester