gpt4 book ai didi

c++ - 阵列平均

转载 作者:太空宇宙 更新时间:2023-11-04 05:56:19 25 4
gpt4 key购买 nike

我一直在努力解决这个问题,这就是我在这里寻求帮助的原因。

让我们想象一下名为“scores”的数组的以下一组值

20 30 40 50 10 20 40 10

我想做的是创建一个循环来计算每 4 个值的平均值。在这种情况下,做手工数学应该是

(20+30+40+50)/4
(10+20+40+10)/4

现在,我的观点和问题是我不知道如何用一个循环来做到这一点。我知道我可以设置两个循环然后这样做,但很明显,如果数组更大,那么我将不得不设置数百个循环。现在我所做的解决方案与真正的解决方案相去甚远

#include <iostream>
#include <string>

using namespace std;

int main()
{
string names[4] = {"Peter","Mark","July","Sarah"};
double scores [16] = {20,30,100,60,30,40,10,90,10,99,100,12,100,100,10,100};
double average[4] ;
int i;

for (int d = 0, i = 0; d < 4 - 1; d++)
{
average[i] += scores[d];
if (d % 4 == 0) {
average[i] /= 4;
i++;
}
}

for (int l = 0 ; l < 4 ; l++)
{

cout << "\nName : " << names[l] << endl << endl ;
cout << "Average : " << average[l] << endl;

}

}

期望的输出:

姓名:彼得平均:52.5姓名 : 马克平均:42.5姓名:七月平均:55.25姓名 : 莎拉平均:77.5

实际输出:姓名 : 彼得平均:5姓名 : 马克平均:130姓名:七月平均值:3.11076e-317姓名 : 莎拉平均值:6.90921e-310

最佳答案

我认为您想使用 C++ 的基础知识。以下代码将为您提供所需的输出。

      string names[4] = {"Peter","Mark","July","Sarah"};
double scores [16] = {20,30,100,60,30,40,10,90,10,99,100,12,100,100,10,100};
double average[4] ;
int i;

for (int d = 1, i = 0; d <= 16; d++)
{
average[i] += scores[d-1];
if (d % 4 == 0) {
average[i] /= 4;
i++;
}
}

for (int l = 0 ; l < 4 ; l++)
{

cout << "\nName : " << names[l] << endl << endl ;
cout << "Average : " << average[l] << endl;

}

关于c++ - 阵列平均,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26897433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com