C++如何制作一个计数循环来确定两个输入数字中哪个最小,并从那里开始计数

标签 c++ for-loop counting

我正在开发一个程序,它接受两个输入值并将它们之间的所有数字相加,包括输入值本身。但是,它需要双向工作,因此首先输入 5 和 1 秒与首先输入 1 和 5 秒完全相同。我的问题是我只能对整个函数使用一个循环,也就是我用来将所有数字相加的 for 循环。我不能在循环中有 if 或 switch 语句。我很难为程序找出一个代码来确定两个数字中哪个最小,然后从那里开始计数。这是我试图实现的想法之一,但显然到目前为止我无处可去。

for (int i = x; i <= y; i++)
{
    i ? sum += i : x += y;
    count++;
}

最佳答案

使用代数,没有循环。连续数之和 = 项数 *(首项 + 末项)- 算术级数。

auto sum = std::abs(firstVal - secondVal + 1) * (firstVal + secondVal);

关于C++如何制作一个计数循环来确定两个输入数字中哪个最小,并从那里开始计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42604028/

相关文章:

c++ - 如何测试结构的成员是否已定义 (c++)

嵌套循环获取素数的C程序

javascript - Jquery递减点击

java - 计算数组中某个值的实例数

使用 OpenCV 进行 C++ 生物细胞计数

c++ - 模板类型略有变化后继承特征类

c++ - 错误 C2101 : '&' on constant

有人可以帮我解释一下这段C代码吗?

Python DataFrames For 循环与 If 语句不起作用

c++ - Xcode 的 std::default_random_engine 的替代方案?