C++ - 成对显示的整数因子
C++ - Factors of an integer displayed in pairs
我有显示输入整数因数的代码:
#include <iostream>
using namespace std;
int main() {
int value;
cout << "Enter a value ";
cin >> value;
for (int i = 1; i <= value; i++) {
if(value % i == 0) {
cout << i << " ";
}
}
}
显示
1 2 3 6
如果输入是 6
。
但是,我不太确定如何得到结果
2,3||1,6||
任何人都可以提供有关如何实现此目标的任何提示吗?
我的教授刚刚讲完 MOD 所以我不确定这是否需要一个尚未涵盖的主题。
按如下方式更改您的代码:
for (int i=1;i<=sqrt(value);i++){
if(value%i==0){
cout<<i<<","<<value/i;
}
为 sqrt()
包含 <math.h>
或者您可以使用 i * i <= value
将这些结果存储在数组中。
对该数组中的元素执行另一项操作,找出乘积等于给定输入的对。
例如:将1、2、3、6存储在一个数组中
对这些元素执行操作
1*6 == 6 || 2*3 == 6
显示这些对。
我有显示输入整数因数的代码:
#include <iostream>
using namespace std;
int main() {
int value;
cout << "Enter a value ";
cin >> value;
for (int i = 1; i <= value; i++) {
if(value % i == 0) {
cout << i << " ";
}
}
}
显示
1 2 3 6
如果输入是 6
。
但是,我不太确定如何得到结果
2,3||1,6||
任何人都可以提供有关如何实现此目标的任何提示吗?
我的教授刚刚讲完 MOD 所以我不确定这是否需要一个尚未涵盖的主题。
按如下方式更改您的代码:
for (int i=1;i<=sqrt(value);i++){
if(value%i==0){
cout<<i<<","<<value/i;
}
为 sqrt()
<math.h>
或者您可以使用 i * i <= value
将这些结果存储在数组中。
对该数组中的元素执行另一项操作,找出乘积等于给定输入的对。
例如:将1、2、3、6存储在一个数组中
对这些元素执行操作
1*6 == 6 || 2*3 == 6
显示这些对。