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
显示这些对。