2014-02-07 122 views
-1

好吧,我正在嘗試使用'while'循環編寫一個程序來計算某個測試分數的平均值。我的第一個輸入是測試的數量,之後的每個輸入都是一組分數(所以第一個輸入是5,然後接下來的5個輸入是5個不同的測試分數)。我必須一次輸入所有變量,以便找到所有測試分數的總和,然後計算平均值。使用while循環計算平均測試分數

我完全停留在如何做到這一點,甚至不知道從哪裏開始。

回答

0

,讓你開始但不能透露太多......

要做到這一點,我認爲要做到這一點的方式:

首先需要輸入的測試#。

Cin >> test_amt; 

好的,現在你知道有多少測試。大!所以現在你應該使用一個while循環來完成每個測試併爲分數輸入!我會在這裏使用for循環,但如果你想使用while循環,那麼肯定。

counter = 0; 
while(counter != test_amt-1) 
{ 
    cin >> score; 
    //I would use a vector to store each score. 
    //this way, you easily know which score matches up with which test 
    score = 0; 
    counter++; 
} 

我希望這可以讓你開始。如果沒有,請讓我知道,我會很樂意幫助更多。

1

一些僞

total <- 0 
N <- input number of tests 
i <- 1 
while i <= N 
    data[i] <- input data 
    total <- total + data[i] 
    i <- i + 1 
avg <- total/N 
0

通過逐個添加它們並最終獲得平均值,將所有分數取單個變量。下面我給出了一個提示,將幫助您使用while循環。但你可以使用你自己的邏輯:

int test_amount, counter = 0, total = 0, score; 
int avg; 

cout<<"Enter test amount"<<endl; 
cin>>test_amount; 
while(counter < (test_amount-1)) 
{ 
    cout<<"Enter the test score"<<endl; 
    cin>>score; 
    total=total+score; 
    counter++; 
} 
avg = total/test_amount; 

如果你想存儲的分數,以及你可能會想到向量或數組。由於「測試數量」的數量並不固定,您還可以使用動態數組,鏈接列表等。考慮其他方法,發佈自己的代碼,Google也提供各種幫助。