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.
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.
Jeg tror jeg har forstået hvad du mener. Mange tak for hjælpen
Synes godt om
Ny brugerNybegynder
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.