簡體   English   中英

Javascript:保持偶數和奇數隨機數的數量並獲得每個的總和

[英]Javascript: Keep count of even and odd random numbers and get the sum of each

當我運行這個程序時,我只得到偶數計數和奇數總和。 奇數和偶數每次都給我 0。 有誰知道我錯過了什么? 謝謝!

我正在嘗試生成 100 個隨機數並保持對偶數/幾率的計數,然后得到每個的總和。

var min = 1;
var max = 1000;
var randomNumArray = []
var oddCount = []
var evenCount = []
var oddSum = []
var evenSum = []

function isEven(x){
    if (x % 2 == 0)
        return true;
    else
        return false;
}

function sumOfArray(evenSum){
    for(i = 0; i< evenSum.length; i++){
        if (isEven){
            return(evenSum);
        }
        else{
        return (oddSum);
        }
    }
}
for( i = 0; i < 100; i++){
    var randNumber = Math.floor(min + (Math.random() * max));
    randomNumArray.push(randNumber);
}

for( i = 0; i< randNumber.length; i++){
    if (isEven(evenCount[i])){
        return evenCount;
    }
    else{
        return oddCount;
    }
}

console.log('Even Number Count: ' + evenCount);
console.log('Odd Number Count: ' + oddCount);
console.log('Sum Even: ' + evenSum);
console.log('Sum Odd: ' + oddSum);

我只會使用 1 函數來檢查它是偶數還是奇數,然后決定將總和與數字本身相加,並將計數加 1。您使它變得更加復雜,我想知道為什么要使用數組。

嘗試這樣的事情:

for( i = 0; i < 100; i++){
  var randNumber = Math.floor(min + (Math.random() * max));
  if(isEven(randNum)){
     evenSum = evensum+randNum;
     evenCount ++;
  }else{
     oddSum= oddSum+randNum;
     oddSum++;
  }
}
var oddCount = 0
var evenCount = 0
for(i=0; i<randomNumArray.length; i++) {
    if(randomNumArray[i] % 2 == 0) {
        evenCount++
    } else {
        oddCount++
    }
};

這樣的事情應該有效嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM