嗨,我被分配创建一个程序,创建由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