Applet niet herhalen lus – Stack Overflow

Ik heb een opdracht die een race tussen een schildpad en een haas houdt. Kortom, ik heb twee GIF-bestanden, één van een schildpad en een van een haas, die in een applet te geven en tegen elkaar racen door het bevorderen langs de x-as. Daarbij moet ik een random number generator anders genereren "moves" waarin het dier (beeldbestand) gaat vooruit of achteruit een aantal posities. Deze beugel herhaald totdat een van de dieren de 50e positie bereikt. Ook moet er een vertraging van een soort tussen elke worden verplaatst dat de twee dieren te maken.

Het verwachte resultaat:

  • De tortoise.gif bestand verschijnt (10, 10) en de hare.gif file verschijnt (10, 137)
  • Er is een korte vertraging totdat het random number generator rolt een 4 (Het maakt niet uit voor mij, waar / wanneer de nummers worden gemaakt zolang zij zich in tussen 1-10)
  • De schildpad voorschotten 3 standen (formule voor functies is 145x + 10, het maken van nieuwe coördinaten van de schildpad’s (445, 10)
  • De haas voorschotten 1 positie, waardoor het nieuwe coördinaten (155, 10)
  • Herhaal dit totdat men door naar de 50e positie (zie aanvullende informatie over wat er moet gebeuren voor elk willekeurig getal)


Wat gebeurt er eigenlijk

De schildpad en de haas opdagen in de juiste plaatsen, maar niet bewegen.

Ik wil dat de schildpad en de haas om hun posities te bevorderen op basis van een timer, maar na het opstellen van de code en de lancering van de applet, als gevolg van een vergissing in mijn code, dat doen ze niet.

Wat ik denk Might Be Wrong

Ik denk dat het probleem zou kunnen te maken hebben met hoe ik geïmplementeerd de vertraging, mijn gebruik van een element in een array als de x-waarde voor de afbeeldingen, of tegenstrijdige variabelen in mijn do-while lus en / of mijn geval verklaring, hoewel ik niet weet wat er mis is ook niet wat ik zou moeten oplossen. Maar ik besef nu dat als het programma werkt, als gevolg van mijn gebruik van randoms.length als constructeur in mijn lus in de buurt van de top, de schildpad en de haas zal slechts 50 tijden veranderen posities voor wat er ook gebeurt te stoppen. Ik weet niet hoe dit probleem ook oplossen.

Hier is een grafiek van hoe ver de dieren volgens de random number gekozen zou moeten bewegen:

1-2 = Tortoise beweegt 3 posities, Hare beweegt + 9

3-5 = Tortoise beweegt 3 posities, Hare beweegt 1

6 = Tortoise beweegt 1 positie, Hare beweegt heen -12

7-8 = Tortoise beweegt 1 positie, Hare beweegt heen -2

10/09 = Tortoise beweegt heen -6 posities, heeft Hare helemaal niet bewegen

Een dier kan niet verder terug dan de oorspronkelijke positie te verplaatsen (posities [0]). Als het nummer hieronder gaat, moet het dier blijven op die positie. Deze regel geldt ook voor functies van meer dan 50.

  • Deze code compileert prima, maar de applet niet functioneert zoals geprobeerd.
  • Mijn excuses als deze code lijkt erg rommelig, zoals ik vrij nieuw ben voor codering met Java evenals het werken met applets.
  • vroeg 2 november ’13 op 23:38

    stackoverflow.com

    Geef een reactie

    Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

    elf + elf =