繁体   English   中英

如何计算间隔[a,b]

[英]How to calculate interval [a,b]

在我的第一个小项目中,我是C ++的新手,这让我很头疼。

如果我正确理解了pbolem,则需要指出间隔[a,b]的总和,这应该表示:17 + 18 + 19 + 20 + 21 ..... + 52 =? (如果我错了,请纠正我!)我尝试了while,do-while,它们最终都成为了一个无限循环,所以现在我尝试使用for循环,这使我只能将a的值增加到52。

 #include <iostream> int main(int argc, char* argv[]) { const int a = 17; const int b = 52; int summe = 0; for(summe = a; summe <=b; summe++) std::cout << "Summe: " << summe << "\\n"; return 0; } 

您的代码只是转储您希望求和的数字,但是您忘记了对它们求和!

int main(int argc, char* argv[])
{
    const int a = 17;
    const int b = 52;

    int summe, number;

    for(summe = 0, number = a; number <= b; number++)
        summe += number;

    std::cout << "Summe: " << summe << "\n";

    return 0;
}

或者,一种更简单的方法:根本没有循环!

int a = 17;
int b = 52;
int sum = (a + b) * (b - a + 1) / 2.0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM