PDA

Volledige versie bekijken : Random getallen tracen


Joepiooo
%Europe/Berlin %440 %2008, 11:34
Hallo,

Ik moet een opdracht maken voor school en ik kom er niet helemaal uit.

Ik moet random getallen tracen van 1 t/m 10

Het leek mij heel simpel ( zal het ook wel zijn ) maar kom er toch niet helemaal aan uit.

Het moet als volgt in mijn output venster komen

Getallen: 1,2,3,4,5,6,7,8,9,10
Random: 2,5,8,1,6,3,4,7,9,10

Elke keer als ik hem afspeel moeten er bij Random weer verschillende getallen getraced worden

Heeft iemand hier toevallig een simpele code voor die mij op weg kan helpen?

Alvast bedankt

Joep

mknol
%Europe/Berlin %452 %2008, 11:52
De truc is om er een array (collectie van waardes) van te maken, en deze willekeurige te sorteren met behulp van een functie.
var sortedArray:Array = new Array( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 );
var randomArray:Array = sortedArray;
randomArray.sort( shuffle );

trace ( "Getallen:" + sortedArray);
trace ( "Random:" + randomArray );

function shuffle(a, b):int
{
var num:int = Math.round(Math.random() * 2) - 1;
return num;
}

nuvorm
%Europe/Berlin %519 %2008, 13:28
trace(int(Math.random()*10));

of in een for loopje?

for(var i:Number=0;i<10;i++){
trace(int(Math.random()*10));
}

xWouterx
%Europe/Berlin %543 %2008, 14:02
trace(int(Math.random()*10));

of in een for loopje?

for(var i:Number=0;i<10;i++){
trace(int(Math.random()*10));
}
Daarmee los je zijn probleem niet op, zo krijg je 10 random getallen maar geen random gesorteerde lijst.

Jouw resultaat =
5 0 8 9 7 8 9 6 8 9
En voor waarden van tem 10 is het als volgt:
for(var i:Number=0;i<10;i++){
trace(int(Math.random()*10) + 1);
}

TheDutch
%Europe/Berlin %554 %2008, 14:18
De manier van mknol is de goede manier. Hij heeft namelijk ook gedacht aan het feit dat het een lijst met unieke getallen moet zijn :).