第二题:质因数分解
https://www.luogu.com.cn/problem/P1075
题意
已知正整数 n 是两个不同的质数的乘积,试求出两者中较大的那个质数。
思路
- 质数又称素数,质数是大于1而且只能被1和自身整除的自然数
- n为两个质数之积,也就是说只要找到一个数能够被n整除,这个数一定是质数。2为最小的质数,直接从2开始找,这里通过for循环找到质数,然后与n相除,找到另一个质数,比大小即可,选出最大那个即可。
坑点
无
代码
#include <stdio.h>
#include <math.h>
int main()
{
int n,i,j,max;
scanf("%d",&n);
for(i=2;i<n;i++){
if(n%i==0){
j=n/i;
break;
}
}
if(i>j){
max=i;
}
else{
max=j;
}
printf("%d",max);
return 0;
}