java基础算法

1:升序数

    public static void main(String[] args) {
//        升序数个位数小于等于十位数
        System.out.println("所有2位数的升序数有:");
        int count;
        count = 0;
            for(int i= 10;i<=99;i++){
                //定义个位和十位
                int g,s;
                    g = i % 10;
                    s = i / 10;
                        if(s<=g){
                            System.out.print(i+" ");
                                count = count +1;
                                if(count % 10 ==0){
                                    System.out.println("");
                                }
                        }
            }
    }

2:回文数

    public static void main(String[] args) {
//        输出1000-9999之间的回文数
        System.out.println("1000-9999之间的回文数有:");
            for(int i = 1000;i<=9999;i++){
                //定义个十百千
                int g,s,b,q;
                g = i % 10;//个位
                s = i/10 %10;//十位
                b = i/100 %10;//百位
                q = i/1000;//千位
                    if( g==q && s==b ){
                        System.out.println(i);
                    }
            }
    }

3:守型数

    public static void main(String[] args) {
        System.out.println("1000以内的守型数有:");
        for(int i=1;i<=1000;i++){
            if( i == i*i %10 | i == i*i %100 | i==i*i % 1000 ){
                System.out.println(i);
            }
        }
    }

4:水仙花数

  public static void main(String[] args) {
        System.out.println("100-999之间的水仙花数有:");
        for(int i= 100;i<=999;i++){
            //取出个十百位
            int z,x,c;
            z = i % 10 ;//个位
            x = i /10 % 10;//十位
            c = i/100;//百位
                if((z*z*z)+(x*x*x)+(c*c*c)==i){
                    System.out.println(i);
                }
        }
    }

5:玫瑰花数

   public static void main(String[] args) {
//        所有四位数的各个位数的4次方相加等于它本身则成为玫瑰花数
        System.out.println("所有玫瑰花数有:");
        for(int i=1000;i<=9999;i++){
            //取出每一位数
            int g,s,b,q;
            g = i %10;
            s = i /10 %10;
            b = i/100 %10;
            q = i/1000;
            if((q*q*q*q)+(b*b*b*b)+(s*s*s*s)+(g*g*g*g)== i){
                System.out.println(i);
            }
        }
    }

6:100以内的素数

    public static void main(String[] args) {
//        找1-100之间有多少素数
        System.out.println("1-100之间的素数有:");
        int f = 0;
        for (int i = 2; i <= 100; i++) {
            f = 0;
            for (int j = 2; j < i -1; j++) {
                if (i % j == 0) {
                    f = 1;//不是素数
                    break;
                }
            }
            if (f == 0) {
                System.out.print(i+" ");
            }
        }
    }

7:质数(素数)判断

    public static void main(String[] args) {
//        判断质数(素数)
        System.out.println("判断是否为质数");
        Scanner sc = new Scanner(System.in);
    int f;
    f = 0;//是质数
        int sr = sc.nextInt();
            for(int i = 2;i<=sr-1;i++){ //质数从2到他本身-1之间不会被整除
                if(sr % i ==0){
                    f = 1;//不是质数
                    break;
                }
            }
            if(f==0){
                System.out.println(sr+"是质数");
            }else if (f==1){
                System.out.println(sr+"不是质数");
            }
    }

8:阶乘

   public static void main(String[] args) {
//        判断质数(素数)
        System.out.println("判断是否为质数");
        Scanner sc = new Scanner(System.in);
    int f;
    f = 0;//是质数
        int sr = sc.nextInt();
            for(int i = 2;i<=sr-1;i++){ //质数从2到他本身-1之间不会被整除
                if(sr % i ==0){
                    f = 1;//不是质数
                    break;
                }
            }
            if(f==0){
                System.out.println(sr+"是质数");
            }else if (f==1){
                System.out.println(sr+"不是质数");
            }
    }

9:降序数

    public static void main(String[] args) {
//        判断质数(素数)
        System.out.println("判断是否为质数");
        Scanner sc = new Scanner(System.in);
    int f;
    f = 0;//是质数
        int sr = sc.nextInt();
            for(int i = 2;i<=sr-1;i++){ //质数从2到他本身-1之间不会被整除
                if(sr % i ==0){
                    f = 1;//不是质数
                    break;
                }
            }
            if(f==0){
                System.out.println(sr+"是质数");
            }else if (f==1){
                System.out.println(sr+"不是质数");
            }
    }

10:零巧数

    public static void main(String[] args) {
//        一个数的百位数为0去掉百位数后,这个数乘9等于它本身,则成为零巧数
        System.out.println("零巧数有:");
        for(int i=1000;i<=9999;i++){
            //定义个十百千位
            int g,s,b,q;
            g = i % 10;
            s = i/10 %10;
            b = i/100 %10;
            q = i/1000 ;
                if(b == 0 && (q*100+s*10+g)*9==i ){
                    System.out.println(i);
                }
        }
    }

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值