【问题标题】:What is a way to solve this with loops in c++?有什么方法可以用 C++ 中的循环来解决这个问题?
【发布时间】:2016-01-19 10:06:10
【问题描述】:

我整晚都在编码,所以我的脑袋处于震惊状态。我正在尝试执行以下操作,但我只是不明白我们的教授要我们做什么。 "输入一个无符号数,称其为数字。然后输入数字双精度值,然后输出数字的和和乘积。(如果数字为零,则输入0个双精度数;0个数字的和为0,乘积0 个数字是 1)"

如果有人能帮我解决这个问题,我将不胜感激。谢谢。

编辑:

这是我到目前为止所拥有的,我目前感到困惑的是如何使无符号变量成为循环内双输入的数量。

unsigned number, x;
double double_num, sum;
cout << "Input the number of value: \n";
cin >> number;
for (x = 0; x > number; x++) {
    cin >> double_num;
}
return 0;

【问题讨论】:

  • 请贴出你目前写的代码。另请参阅how to debug small programs
  • Input an unsigned and call it g 到目前为止,该步骤的代码是什么?
  • 那么基本上,您希望我们为您解释说明吗?还是替你完成任务?两者都不是真正的主题...
  • 对我来说似乎很容易。读取一个无符号整数输入。称它为g。从 0 到 g 循环,每次迭代读取一个 double。有两个附加变量:一个存储连续总和,另一个存储连续乘积。完成循环后输出这些变量。
  • 您似乎未能“称其为 g”,为什么要多次读取未签名的数字?

标签: c++ loops math


【解决方案1】:

你有什么困难?

这是一个开始:

// Input an unsigned and 
unsigned int g;
cout << "Please Enter an unsigned int value, g" << endl;
cin >> g;

在你的循环中,你有:

for (x = 0; x > number; x++) {

这意味着:

x 设置为零。
虽然 x 比某个数字更大,但请继续...

你认为 0 什么时候比 5 之类的数字大??
你认为这个循环会运行多少次?


int main(void)
{
    unsigned g;
    double product(1);
    double sum(0);

    cout << "Input the number of value: \n";
    cin >> g;
    for (unsigned x = 0; x < g; x++) {
        double n;
        cout << "Input a number: " <<endl;
        cin >> num;
        product *= num;
        sum += num;
    }

    cout << "The product is" << product << "\n";
    cout << "The sum is" << sum << "\n" << endl;;
    return 0;
}

【讨论】:

  • 这是我到目前为止所拥有的,我目前感到困惑的是如何使无符号变量成为循环内双输入的数量。 "无符号数; int x,sum; for (x = 0; x > number; x++) { cin >> number; }"
【解决方案2】:

你需要类似以下的东西:

#include<iostream>
#include<cstdlib>

int main()
{
    unsigned int n;
    std::cin >> n;
    double g, p=1, s=0;
    while (n-->0 && std::cin >> g) p*=g,s+=g;
    return std::cin
        ? std::cout << s << std::endl << p << std::endl, EXIT_SUCCESS
        : (std::cerr << "Failed to read all inputs" << std::endl, EXIT_FAILURE);
}

您应该确保您理解每个陈述并准备好证明您的选择是合理的;如果没有,你可能什么都没学到,也不太可能通过你的课程。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    • 2021-07-28
    • 1970-01-01
    • 2015-05-26
    • 2021-09-06
    • 1970-01-01
    相关资源
    最近更新 更多