简单的C ++程序,丢失和需要指导

时间:2015-10-10 00:03:19

标签: c++

我目前正在做一项任务,我对如何去做有点迷失。

以下是有关作业的信息:

  

计算一组数字的最大值,最小值,计数,平均值和标准偏差(标准偏差)。

     

平均公式为:   平均值是总和除以计数

     

标准差的公式是:   stddev是方差的平方根

     

方差公式为:   方差是(平方和除以计数)减去平均值的平方。

     

通过平方和,我的意思是列表如:2 3 4,正方形是4,9,16,因此正方形的总和将是29。

     

当提示“输入另一个?”时,键入n退出提示并计算输出值。键入y或任何其他单个字符以继续输入值。

这是解决方案的截图/示例运行:http://i.imgur.com/OAHwMHs.png

这是我到目前为止所拥有的

#include <iostream>

using namespace std;

double k;
char another;

int main()
{
    cout <<"\nEnter a number:";
    cin >> k;

    cout <<"\nEnter another?";
    cin >> another;

    if(another=="y")


double max,min,sum,average,standard,variance,count;

sum = k +

average = sum / count;

variance = 

    cout <<"\nMax Value:"<< max;
    cout <<"\nMin Value:"<< min;
    cout <<"\nCount:" << count;
    cout <<"\nAverage:" << average;
    cout <<"\nStd  Dev:"<< variance;

    return 0;
}`
  1. 如果用户输入Y,我怎么能这样做呢?他可以输入另一个号码,如分配所说的那样?并且n留下提示并计算

  2. 我如何制作它以显示最小/最大值的最低和最高值?

  3. 如何获取为计数输入的值的数量?

  4. 谢谢你们!

2 个答案:

答案 0 :(得分:1)

  

如果用户输入Y,我该怎么做呢,他可以输入另一个号码,如作业所说的那样?并且n留下提示并计算

你可以把程序放到while循环中,如果用户输入n,它就会脱离循环。

的内容
bool inputting_Numbers = true;

while (inputting_Numbers) {

    // get data

    cin >> another;

    if (another == 'n')
        inputting_Numbers = false;

}

// calculations

或者,为了让它变得更好,不要询问用户是否要输入其他数字,而是让它仅在特定字符上中断,例如s停止或b断裂。

bool inputting_Numbers = true;

while (inputting_Numbers) {

    // get data

    cin >> another;

    if (another == 'b' || another == 's')
        inputting_Numbers = false;

}

//calculations

您还必须将数字放入数组或向量中。如果你有一组数字,一个变量是不够的。由于您使用的是C ++,我建议使用向量。

  

如何制作它以显示最小/最大值的最低和最高值?

您可以创建一个函数来查找数组或向量的最小和最大数字。然后把它打印出来。

  

如何获取为计数输入的值的数量?

如果您使用的是矢量,则可以执行

vectorName.size();

获取数字量。如果您正在使用数组,则可以通过

获取数字量
int amount = sizeof(arrayName) / sizeof(int);

答案 1 :(得分:1)

您希望while循环分别处理每个数字,然后在用户完成后处理总计。您的算法是:

  • 将总和和事情设为0
  • 开始你的while循环
    • 获取输入
    • 添加到sum和sum_of_squares
    • 增加点数
    • 检查是否有最大值和最小值
    • 如果用户不
    • ,请求继续并在循环中停止
  • 计算平均值和std_dev
  • 打印所有内容

代码:

ul {
    /* Use flex boxes to align li items */
    display: flex;
    justify-content: space-around;
    /* Remove default padding from major browsers */
    padding: 0;
    /* Hide the default decorations for li items */
    list-style: none;
}
ul > li {
    /* Display the elements in one line */
    display: inline-block;
}