C++ 如何在指定的间隔上找到数字的除数?
我想用WHILE循环写一个简单的程序,用它你可以得到你输入的数字的所有除数 例如,您需要数字30的所有除数,即:1、2、3、5、6、10、15、30。 现在,您希望程序仅显示间隔(例如)为5-10的数字,即5、6和10 到目前为止,我尝试的是得到所有用于句子的除数,但没有间隔,所以我很累,不知道如何使它也在WHILE循环中C++ 如何在指定的间隔上找到数字的除数?,c++,while-loop,numbers,C++,While Loop,Numbers,我想用WHILE循环写一个简单的程序,用它你可以得到你输入的数字的所有除数 例如,您需要数字30的所有除数,即:1、2、3、5、6、10、15、30。 现在,您希望程序仅显示间隔(例如)为5-10的数字,即5、6和10 到目前为止,我尝试的是得到所有用于句子的除数,但没有间隔,所以我很累,不知道如何使它也在WHILE循环中 #include <iostream> using namespace std; int main() { int input_number; cin >
#include <iostream>
using namespace std;
int main() {
int input_number;
cin >> input_number;
cout << "All numbers are " << input_number << endl;
for (int i = 1; i <= input_number; i++) {
if (input_number % i == 0) {
cout << i << " ";
}
}
return 0;
}
#包括
使用名称空间std;
int main(){
输入整数;
cin>>输入_编号;
cout为什么要在
循环时作为执行此操作?for无疑是正确的循环选择。通过以下方式可以非常清楚地检查所有除数:
for (int i = 1; i <= input_number; i++) { ... }
但这更容易出错-如果在循环体中有一个
continue
,i
不会增加。在中解决这个问题,而循环可能不像在for
循环中解决它那么简单(或暴力)
使用同时使用考虑循环的此格式副本:
int输入_编号;
std::cin>>输入_编号;
int i=1;//开始尝试将输入数字除以1
int limit=input_number;//循环的终止条件
while(i std::无法添加另一个if语句并检查i
是否在筛选器的范围内。@NathanOliver是的,我也发现了这一点,但问题是我不知道如何将整个过程重新生成while循环。那么您尝试了什么?i while循环和for循环基本相同,您只需自己处理循环变量。@NathanOl我甚至不知道如何开始。我知道while循环看起来像什么,但不知道取什么作为条件和什么作为语句。for循环不必从1变为输入,用局部变量更改它们,for/while循环的条件将自动到来。我想让程序使用for和while循环,因为我是编程新手,希望看到代码中的差异,但我对从for到while lopp的翻译感到很生厌。
for (int i = lower_bound; i <= upper_bound; i++) { ... }
int i = lower_bound;
while (i <= upper_bound) {
...
i++;
}