mardi 26 janvier 2016

How to make my room sorter more random?

So I'm working on a program which is supposed to randomly put people in 6 rooms (final input is the list of rooms with who is in each room). So I figured out how to do all that.

        //this is the main sorting sequence:
        for (int srtM = 0; srtM < Guys.length; srtM++) {
        done = false;
        People newMove = Guys[srtM]; //Guys is an array of People 
        while (!done) {
            newMove.rndRoom(); //sets random number from 4 to 6
            if (newMove.getRoom() == 4 && !room4.isFull()) {
                room4.add(newMove); //adds person into the room4 object rList
                done = true;
            } else if (newMove.getRoom() == 5 && !room5.isFull()) {
                room5.add(newMove);
                done = true;
            } else if (newMove.getRoom() == 6 && !room6.isFull()) {
                room6.add(newMove);
                done = true;
            }
        }

The problem now is that the code for reasons I don't completely understand (something with the way I wrote it here) is hardly random. It seems the same people are put into the same rooms almost every time I run the program. For example me, I'm almost always put by this program into room 6 together with another one friend (interestingly, we're both at the end of the Guys array). So how can I make it "truly" random? Or a lot more random than it is now?

Thanks in advance!




Aucun commentaire:

Enregistrer un commentaire