C++ 实现整数乘积因子分解 (不使用 vector)
#include\u003ciostream\u003e\nusing namespace std;\n\nvoid printFactors(int n, int current, string factors) {\n // 判断是否是正整数\n if (n \u003c= 0) {\n return;\n }\n // 打印乘积因子\n if (n == 1) {\n cout \u003c\u003c factors \u003c\u003c endl;\n return;\n }\n // 递归寻找乘积因子\n for (int i = current; i \u003c= n; i++) {\n if (n % i == 0) {\n if (factors == \u0022\u0022) {\n printFactors(n / i, i, factors + to_string(i));\n } else {\n printFactors(n / i, i, factors + "" + to_string(i));\n }\n }\n }\n}\n\nint main() {\n int num;\n cout \u003c\u003c "请输入一个整数:";\n cin \u003e\u003e num;\n cout \u003c\u003c "所有可能的乘积因子如下:" \u003c\u003c endl;\n printFactors(num, 2, \u0022\u0022);\n return 0;\n}\n\n## 流程表\n\n| 步骤 | 说明 | 输入 | 输出 | 备注 |\n| :--: | :----------: | :-------: | :----------: | :----------: |\n| 1 | 输出提示 | | | |\n| 2 | 读取输入 | | num | |\n| 3 | 输出乘积因子 | num | "所有可能的乘积因子如下:" | |\n| 4 | 调用函数 | num, 2, \u0022\u0022 | | |\n| 5 | 判断是否是正整数 | n | | 如果n \u003c= 0,则返回 |\n| 6 | 打印乘积因子 | n | | 如果n == 1,则打印factors |\n| 7 | 递归寻找乘积因子 | n/i, i, factors + "" + to_string(i) | | 循环i从current到n,如果n能整除i,则递归调用printFactors |\n| 8 | 输出结果 | | | |
原文地址: https://www.cveoy.top/t/topic/pylI 著作权归作者所有。请勿转载和采集!