程序4:分解质因数
题目:将一个正整数分解质因数。例如:输入90,打印出90=2 3 3*5。
正解:
1.使用该数m去除以2到sqrt(m)之间的数,如果不能够整除的话,说明其本身就是质数了。
2.使用该数m去除以2到sqrt(m)之间的数,如果能够整除的话,再继续循环,直到回到第一步为止。
整数i初始为2,。。。直到sqrt(num)
8
8/2=4
4/2=2
2/2=1
所以8的质因数为2 2 2
9
9/2!=0. i++;
9/3=3.
3/3=1.
所以9的质因数为3*3
27
27/2!=0 i++
27/3=9
9/3=3
3/3=1
所以27的质因数为3 3 3
100
100/2=50
50/2=25
25/2!=0 i++
25%3!=0 i++
25%4!=0 i++
25%5=0 25/5=5
5%5=0 5/5=1
所以100的质因数为2 2 5*5
90
90%2=0 90/2=45
45%2!=0 所以i++
45%3=0 45/3=15
15%3=0 15/3=5
5%3!=0 i++
5%4!=0 i++
5%5=0 5/5=1
所以90的质因素为2 3 3*5
public void zhiyinshu(int num){
int i=2;
int shang;
while(num!i=1){
if(num%i==0){
num=num/i;
print(i+"*");
}else{
i++;
}
}
}
2024-10-28 广告