java分解因数的代码 java因式分解代码( 二 )


System.out.println("请java分解因数的代码你输入一个正整数,并按Enter确认");
Scanner sc=new Scanner(System.in);
int Num=sc.nextInt();
//首先,我们需要得到 , 输入的这个数Num的一半以内的所有质数
VectorInteger vec;
vec=new Vector();
Lab:for(int i=2;i=Num;i++){
for(int j=2;j=i/2;j++){
if(i%j==0i!=2){//说明能被整除,则i不是质数
continue Lab;
}
}
//内层for正常完成后,说明i是质数
vec.add(i);//添加到列表
}
//下面开始分解质因数
System.out.println(Num+"的分解结果是:\n");
System.out.print(Num+"=");
int theNum=Num;
boolean help=true;
for(int k=0;kvec.size();k++){
int qq=(int)vec.get(k);
if(theNumqq)
break;
if(theNum%qq==0){//水明能被整除 , 则qq就是Num的一个质因数
if(help==true){
System.out.print(qq);
help=false;
}else{
System.out.print("*"+qq);
}
k--;//因为 , 完全有可能Num还能被qq整除,
//所以重新执行一遍
theNum=theNum/qq;
}
}
System.out.println("\n分解完毕!");
}
}
用Java对正整数分解质因数?因为你没有加结束的条件
在函数中第一行加
if(x==0)//x==0该子问题结束
return;
递归两个必须元素:
(1)递归终止的条件
(2)分解问题
关于java分解因数的代码和java因式分解代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

推荐阅读