永发信息网

输入一个数并输出它的质因数,如20=2*2*5(要求,能多次判断不同的数,也就是循环进行)

答案:2  悬赏:20  手机版
解决时间 2021-03-04 08:48
  • 提问者网友:黑米和小志
  • 2021-03-03 17:51
输入一个数并输出它的质因数,如20=2*2*5(要求,能多次判断不同的数,也就是循环进行)
最佳答案
  • 五星知识达人网友:不想翻身的咸鱼
  • 2021-03-03 18:39
#include 
void main( ) {
int i,n;
while(1){
printf("Input a integer number: ");
scanf("%d",&n);
if(n<2) printf("Input error!

");
else{
printf("%d=",n);
i=2;
while(iif(n%i==0)
{printf("%d*",i);n/=i;}
else i++;
}
printf("%d

",n);
}
}
}
全部回答
  • 1楼网友:骨子里都是戏
  • 2021-03-03 20:12
import java.util.Scanner;
public class Factor {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        while(true){
            System.out.println("请输入一个大于1的整数");
            String next = scan.nextLine();
            if("exit".equals(next)){
                break;
            }
            int num;
            try{
                num = Integer.parseInt(next);
            }catch(NumberFormatException e){
                System.out.println("输入不合法");
                continue;
            }
            if(num<=1){
                System.out.println("输入不合法");
                continue;
            }
            String result = num+"=";
            int f = 2;
            boolean isFirst = true;
            while(num!=1){
                if(num%f==0){
                    if(!isFirst){
                        result += "*";
                    }else{
                        isFirst = false;
                    }
                    result+=f;
                    num/=f;
                }else{
                    f++;
                }
            }
            System.out.println(result);
        }
    }
}
java代码,其他语言自行调整。有问题请追问。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯