我是新来编码,需要知道如何显示我的数组的最大值,最小值,平均值和新的规范化值。我有最大最小和平均工作正确的截至目前,但我很困惑我将如何我的功能显示数组的适当的新值。重点是使用该功能; XI'=(XI-分钟)/(最大值 - 最小值) 我当前的代码如下:数组和通过引用
#include <iostream>
using namespace std;
void normalizeMinMaxAvg(double data[], int size,double& min, double& max, double& avg)
{
max = 0;
min = 0;
int sum = 0;
int i;
avg = 0;
for (i = 0; i < size; i++) {
sum += data[i];
if (max < data[i]) {
max = data[i];
}
if (min > data[i]) {
min = data[i];
}
}
avg = sum/size;
for (i = 0; i < size; i++){
data[i] = (data[i]-min)/(max-min);
}
}
int main()
{
double data[] = {-10.0,0.0,20.0,30.0,500.0};
double min, max, avg;
normalizeMinMaxAvg (data, 5, min, max, avg);
cout << "min = " << min << "\n";
cout << "max = " << max << "\n";
cout << "avg = " << avg << "\n";
cout << data;
return 0;
}
不要使用原始数组,而是使用'std :: array'或'std :: vector'。 – user0042
很有可能这是学校的工作,那些不会被允许的......但是。 –
@MichaelDorgan是正确的,我们不应该使用这些数据 –