嗨,我被分配創建一個程序,創建由10個隨機整數組成的n個數組。程序應該總結所有整數並顯示結果。之後,它必須驗證哪些總和最大,並且必須顯示該數組和結果。我有麻煩做到這一點,並希望得到一些幫助! 再次感謝。 這是到目前爲止我的代碼:C++最大號碼驗證
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
double random(unsigned int &seed);
unsigned int seed = 5;
void generateData(int set[10]);
int sumData(int set[10]);
void checkData(int sumResult, int arrayNumber);
int main (int argc, char * const argv[]) {
int arrayNumber, sumResult;
int set[10];
do {
cout << "Number of Arrays to Compare: " << endl;
cin >> arrayNumber;
} while (arrayNumber < 0);
for (int i = 0; i < arrayNumber; ++i) {
generateData(set);
sumResult = sumData(set);
cout << "Sum --> " << sumResult << endl;
checkData(sumResult, arrayNumber);
}
return 0;
}
double random(unsigned int &seed) {
const int MODULUS = 15749;
const int MULTIPLIER = 69069;
const int INCREMENT = 1;
seed = ((MULTIPLIER * seed) + INCREMENT) % MODULUS;
return double(seed)/double(MODULUS);
}
void generateData(int set[10]) {
for (int i = 0; i < 10; ++i) {
set[i] = int (5 + 6 * random(seed));
cout << set[i] << " || ";
}
}
int sumData(int set[10]) {
int sumTotal = 0;
for (int i = 0; i < 10; ++i)
sumTotal = sumTotal + set[i];
return sumTotal;
}
void checkData(int sumResult, int arrayNumber) {
int largerNumber;
int tempSet[2];
for (int i = 0; i < arrayNumber; ++i) {
if (sumResult > largerNumber) {
tempSet[i] = sumResult;
}
}
}
除非家庭作業的部分是實現一個「隨機數發生器」,有一個'rand'函數在''這將提供比你的「隨機」函數實現更好的僞隨機數(當然,只要確定通過調用'srand'來實現它的種子)。 –
2010-04-14 01:36:01
什麼,你的問題到底是什麼?你在哪裏遇到麻煩? – 2010-04-14 01:37:49
我有這個assingment分配的麻煩。我被分配去開發一個生成n個數組的程序(由用戶詢問)。每個數組由10個隨機整數組成(我知道我的隨機函數不好,但這是我的教授要求我們使用的那個)。然後,程序應該總結每個數組的整數並顯示結果。然後,程序應該驗證哪些總和最大並顯示數組和總和。我如何驗證哪些數額最大? – Daniel 2010-04-14 01:42:25