利用C++,将一个正整数分解质因数。例如:输入 90,打印出 90 = 2 * 3 * 3 * 5
提示:1、 对 n 进行分解质因数,应先找到一个最小的质数 k,k 的值应该从 2 开始,然后按下述 步骤完成:2、 如果这个质数恰等于 n,说明分解质因数的过程已经结束,打印出即可。3、 如果 n > k,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商,作为新的正整 数 n,重复执行第一步。 如果 n 不能被 k 整除,则用 k + 1 作为 k 的值,重复执行
·
提示:
1、 对 n 进行分解质因数,应先找到一个最小的质数 k,k 的值应该从 2 开始,然后按下述 步骤完成:
2、 如果这个质数恰等于 n,说明分解质因数的过程已经结束,打印出即可。
3、 如果 n > k,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商,作为新的正整 数 n,重复执行第一步。 如果 n 不能被 k 整除,则用 k + 1 作为 k 的值,重复执行第一步。
#include <iostream>
using namespace std;
int main()
{
int n;//输入的正整数
int k = 2;//最小的质数
cout <<"请输入一个正整数" << endl;
cin >> n;
cout << "将" << n << "分解成质因数" << endl;
cout << n << " = ";
while(1)
{
if (n == k)
{
cout << k << endl;
cout << "分解质因数的过程已结束" << endl;
break;
}
else if (n > k)
{
if (n % k == 0) //n能被k整除
{
cout << k << " * " ;
n = n / k;
}
else //n不能被k整除
{
k = k+1;
}
}
}
}

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)