vendredi 21 octobre 2016

IF statements, Arrays and functions - Javascript

For a task I must create a function that generates a number between 1 and 9. This function needs to be called 100 times. Then I need to create a 9 element array that will keep count of the number of times each number appears. My code is below. Currently a number is being generated and the array changes. However the array doesn't change correctly, it changes the wrong index and I don't know why, can anyone help? Any advice on how to call the function 100 times as well would be appreciated. It doesn't matter how it works or looks, I don't need to have a set format. Thanks in advance!

    <script>
    function numberGenerate () {
     var nmbrGen = Math.floor(Math.random()*8 +1) ;
     return nmbrGen;
    } 

    function numberChange () {

    document.write(numberGenerate(), "<br>");

    var numberArray = [0,0,0,0,0,0,0,0,0];

     if (numberGenerate() == 1){
       numberArray[0]++;
     }

     else if (numberGenerate() == 2) {
       numberArray[1]++;
     }

     else if (numberGenerate() == 3) {
       numberArray[2]++;
     }

     else if (numberGenerate() == 4) {
       numberArray[3]++;
     }

     else if (numberGenerate() == 5) {
       numberArray[4]++;
     }

     else if (numberGenerate() == 6) {
       numberArray[5]++;
     }

     else if (numberGenerate() == 7) {
       numberArray[6]++;
     }

     else if (numberGenerate() == 8) {
       numberArray[7]++;
     }

     else {numberArray[8]++;}

     document.write(numberArray);       
     }

    </script>
</head>

Aucun commentaire:

Enregistrer un commentaire