这个简单的程序如何不表示递归?
How does this simple program not represent recursion?
这个"not"如何证明递归? 这是一个简单的高/低查找,我将"mid"设置为对范围内程序随机选择的数字的猜测。 我正在和教练进行小便比赛。 你觉得怎么样?
#include <iostream>
#include <cstdlib>
#include <time.h>
using namespace std;
int main()
{
// define variables
int left = 1, mid, range, secret, y = 0;
// query user defined range, assign to variable range
cout << "Please enter top of range: " << endl;
cin >> range;
// seed random number generator with time
srand(time(NULL));
// generate secret number based between left and range
secret = rand() % range;
do {
// define and assign primary value of mid updating on each
iteration
mid = ((range + left) / 2);
if (mid > secret) {
// set range to mid
range = mid;
// iterate
y++;
} else if (mid < secret) {
// set left to mid
left = mid;
// iterate
y++;
} else {
// escape condition met
cout << "Found secret number " << secret << " in " << y
<< " tries. " << endl;
return 0;
}
} while (mid != secret);
return 0;
}
">
当一个事物根据自身或其类型被定义时,就会发生递归。 因此,调用自身的函数是递归的。简单的循环不是。
相关文章:
- 表示"accepting anything for this template argument" C++概念的通配符
- 如何将ampl中的集合表示为c++中的向量
- std::is_base_of表示ctor编译错误
- 输入中的字符串数未知(以字母表示)
- 我可以信任表示整数的浮点或双精度来保持精度吗
- c++模板来表示多项式
- 询问在设计我的手臂模拟器功能表示格式1
- CMakeLists.txt中的命名空间表示法
- C++射线示踪剂ppm表示没有足够的数据来显示图像
- 如何计算Big-O表示法中的平均渐近运行时间
- 我应该如何表示我拥有的连续元素序列?
- 在C++中,使用带有 std::optional 参数的函数<T>来表示可选参数是否有意义?
- 在 std::无符号字符的向量处存储 int 的十六进制表示形式
- 表示类模板C++空类型
- 具有所表示类的相同构造函数签名的代理类模板
- 嵌套在循环中的两个循环的 big-O 表示法
- 具有引用成员的结构是否具有唯一的对象表示形式
- 使用 int 表示浮点除法 C++
- Geeksforgeeks C 程序故障排除:IEE 754 表示法为十进制
- 如何知道n!是否可以表示为三个连续数字的乘法?