【问题标题】:Nested Loop including Average of Integers包含整数平均值的嵌套循环
【发布时间】:2017-10-17 21:11:18
【问题描述】:

早安,

我有一个 C++ 赋值语句:

“创建一个程序,要求用户输入无限数量的数字,直到用户输入零。在输入的数字中,找到最大和最小的数字,以及输入的数字数量和这些数字的平均值.

输出应如下所示:

输入的最大数字是:

输入的最小数字是:

:____个数的平均值是:____

我能够输出最大和最小数字,但我不知道如何合并输入数量并计算平均值。

下面的程序输出输入的最大和最小数字,但我什至不知道从哪里开始输入数字的平均值和数量。我在这方面花了很多时间,是的,我一遍又一遍地阅读我的书。在一个程序帮助中没有针对所有这些请求的特定应用程序??

#include <iostream>              

#define PI 3.14159
using namespace std;

main() - the function that executes


int main()                                      

int number = 1;
int maxNumber = 0;
int minNumber = 0;
int counter = 0;

while (number != 0)
{
      std::cout << "enter an integer: " << endl;
      cin >> number;

    if (counter == 0)
{
      maxNumber = number;
      minNumber = number;
}
   else
{
   if (number > maxNumber && number != 0)
      maxNumber = number;

   else if (number < minNumber && number != 0)
           minNumber = number;
}
         counter++;
}

std::cout << "\nthe largest number entered is " << maxNumber << endl;
std::cout << "\nthe largest number entered is " << minNumber << endl;
return 0;
}

【问题讨论】:

  • 顺便说一句,您的 else if 缺少最后一个 else 子句。
  • 你不认为计数器给出输入的数量吗?如果你得到总和,平均值将是总和/计数器。
  • 您应该在第一个 if 语句之前检查 number 是否为 0。
  • 你是对的,计数器确实给出了输入的数量。对不起!盯着屏幕这么久,我的脑子都没有了。对总和的计算有什么建议吗?
  • @ThomasMatthews 答案应该会给你一个想法。提示:搜索“+=”,

标签: c++ loops nested average


【解决方案1】:

您需要一个sum 变量。将number 添加到sum 变量。

输入所有数字后,将sum除以counter

【讨论】:

    【解决方案2】:

    您还可以使用 for 循环来跟踪总和和计数器:

    for ( sum=0, counter=0, number=1; number!=0 ; sum+=number, ++counter) cin>>数字;

    etc..
    

    【讨论】:

    • 如果目标是编写最紧凑的代码,那可能是赢家。但我宁愿推荐任何人专注于编写可读和可维护的代码。
    【解决方案3】:

    好的,谢谢大家!我花了很长时间,但感谢大家的 cmets,我终于拼凑了我需要的东西,以便运行一个成功的程序。

    它是:sum += 用于求和计算的数字。愚蠢疲惫的眼睛经常错过显而易见的事情。

    非常感谢大家!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-26
      • 2014-12-16
      • 2021-02-12
      相关资源
      最近更新 更多