Rask Tips Få et tilfeldig tall innenfor et spesifisert område ved å bruke AS3

Vi må ofte bruke et tilfeldig generert nummer for bestemte situasjoner; ved hjelp av Math.random () * n vil vanligvis gjøre trikset, men det vil kun beregne et tall fra 0 til n. Hva om vi trenger et tall som ikke gir 0 som minimumsverdien? Hvordan kan du generere et tilfeldig tall mellom 100 og 1000? Jeg vil vise deg hvordan du gjør det i denne Quick Tip.

Endelig resultat

Dette eksemplet viser funksjonen vi skal skape:

Skriv inn to tall, skilt med en ',' og trykk på tilfeldig knapp.


Trinn 1: Kort oversikt

Ved å bruke en funksjon opprettet i ActionScript 3, beregner vi et tall mellom to verdier. Disse verdiene vil bli sendt som parametere og brukes med Math-klassen for å generere et tilfeldig tall.


Trinn 2: Opprett en ny fil

Åpne Flash og opprett en ny Flash-fil (ActionScript 3.0).


Trinn 3: Åpne handlingspanelet

trykk Alternativ + F9 eller gå til Vindu> Handlinger for å åpne handlingspanelet.


Trinn 4: Funksjonserklæring

Erklære en funksjon og gi den navnet randomRange; Denne funksjonen returnerer tilfeldig tall, så sett inn returtype til Nummer.

 funksjon randomRange (): Number 

Trinn 5: Angi parametere

To parametere vil bli brukt til å beregne tallet.

  • minNum: Minste verdien å returnere
  • maxNum: Maksimal verdi å returnere
 funksjon randomRange (minNum: Nummer, maxNum: Nummer): Nummer 

Trinn 6: Skriv hovedfunksjonen

Dette er funksjonen med den faktiske tilfeldig talgenerator linje. Maktens kraft brukes til å generere tallet.

 funksjon randomRange (minNum: Nummer, maxNum: Nummer): Nummer retur (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum); 

Trinn 7: Slik fungerer det

Vi har vår tilfeldige talegeneratorfunksjon, men hva gjør denne funksjonen?

Ta en titt på følgende bilde for å få en bedre ide:

I bildet eksempel, hvis Math.random () var mindre enn 0,5, ville resultatet være 550.


Trinn 8: Test med et spor

En enkel måte å teste funksjonen på er å bruke a spor () funksjon. Se koden under:

funksjon randomRange (minNum: Nummer, maxNum: Nummer): Nummer retur (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum);  spor (randomRange (10, 20)); // Et tall mellom 10 og 20

Trinn 9: Eksempel

Dette er et fungerende eksempel, det bruker en knapp for å beregne tallet og vise det i a Tekstfelt.

 / * The randomRange funksjonen * / funksjonen randomRange (minNum: Nummer, maksNum: Nummer): Nummer retur (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum);  / * Handlingene som skal utføres når knappen trykkes * / funksjonsknappAction (e: MouseEvent): void // En array lagrer tallene i tekstfeltet var n: Array = inputText.text.split ("," ); // Beregn nummeret basert på inngangen, konverter resultatet til en streng // og send den strengen til tekstfeltet generatedNumber.text = String (randomRange (n [0], n [1]));  // Legg til knappens hendelselytter actionButton.addEventListener (MouseEvent.MOUSE_UP, buttonAction);

Skriv inn to tall, skilt med en ',' og trykk på tilfeldig knapp.


Konklusjon

Dette er et grunnleggende eksempel på hvordan du kan bruke denne funksjonen; eksperimentere og bruk det i dine egne prosjekter!

Takk for at du leste!