gpt4 book ai didi

c++函数,查找传入的n个数字的平均值,总和,最小值和最大值

转载 作者:行者123 更新时间:2023-11-27 23:43:09 25 4
gpt4 key购买 nike

下午好,我被要求创建一个名为 void printStatistics(int n) 的函数,它应该打印传入它的 n 个数字的平均值、总和、最小值和最大值。例如,如果我执行了 printStatistics(5),那么我应该要求用户输入数字 5 次,然后打印统计数据。我设法做的就是创建一个 while 循环,要求用户输入一个数字,直到输入一个负数,但我似乎很难将它变成一个要求用户输入 n 次数字然后打印出来的函数总和、平均值、最小值和最大值。这就是我所拥有的。

int main()
{
int value, sum;
int average, min, max;
int count;

sum = 0;
count = 0;

cout << "Enter a number: " << endl;
cin >> value;

min = value;
max = value;

while(value >= 0)
{
sum += value;
count++;
if(value > max)
max = value;
else if(value < min)
min = value;

cout << "Enter a numnber: " << endl;
cin >> value;
}
if(count == 0)
cout << "Nothing entered." << endl;
else
{
average = sum / count;
cout << "Average is " << average << endl;
cout << "Minimum is " << min << endl;
cout << "Maximum is " << max << endl;
cout << "Sum is " << sum << endl;
}
}

最佳答案

根据我从您的问题中了解到的情况,您希望拥有一个函数 (printStatistics),该函数采用“int n”参数,其中“n”对应于用户希望输入的数字数量。然后你要求这些特定数字,然后找到该集合的 MIN、MAX、SUM 和 AVERAGE。如果我理解正确,那么这应该可以解决问题:

#include <iostream>

void printStatistics(int n);


void printStatistics(int n)
{
int response;
int sum = 0;
int max;
int min;

for (int i = 1; i <= n; ++i)
{
std::cout << "Please enter the number in the " << i << " position: ";
std::cin >> response;
if (i == 1)
{
min = response;
max = response;
}
(min > response) ? min = response : min = min;
(max < response) ? max = response : max = max;
sum += response;
}
std::cout << "Sum: " << sum << std::endl;
std::cout << "Average: " << (float)sum / n << std::endl;
std::cout << "Min: " << min << std::endl;
std::cout << "Max: " << max << std::endl;
}


int main()
{
int numberCount;
do
{
std::cout << "How many numbers would you like to print? ";
std::cin >> numberCount;
}while(numberCount <= 0);
printStatistics(numberCount);
}

关于c++函数,查找传入的n个数字的平均值,总和,最小值和最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52787840/

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