Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏

Java入门习题

    • 1.求9的个数
    • 2.求1000到2000之间的闰年
    • 3.判断一个数是否是素数
    • 4.打印1到100之间的所有素数
    • 5.完成猜数字游戏
    • 6.求出100-999之间的所有水仙花数并输出。

1.求9的个数

public class Homework {
    public static void main(String[] args) {
        int ret = numberNineNum();
        System.out.println("ret = "+ret);
    }
    //第一题编写程序数一下1到100的所有整数中出现多少个数字9?
    //循环99次
        public static int numberNineNum() {
            //count变量存储1到100中数字9的个数
            int count = 0;
            //tab键
            for (int i = 0; i < 100; i++) {
                //若9出现在个位
                //19%10=9 %(余数)
                if (i % 10 == 9) {
                    count ++;
                    System.out.print(i +",");

                }
                //当9出现在十位
                //91/10=9
                //两个if分支都走,说明此时if同时满足条件
                if(i / 10 == 9){
                    count ++;
                    System.out.print(i +",");
                }

            }
            return count;
        }
}

Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏_第1张图片

2.求1000到2000之间的闰年

public class Homework {
    public static void main(String[] args) {
       
        printleapYear();//方法调用
    }

public static void printleapYear(){
            int count = 0;
            for (int i = 1000; i <= 2000; i++) {
                //以后分支切忌不要写的太复杂
                //世纪闰年 可以把100整除
                //普通闰年
                if (i % 100 == 0) {
                    //判断世纪闰年
                    if (i % 400 == 0) {
                        count ++;
                        System.out.print(i + ",");
                    }
                } else {
                    //此时i不是100的倍数,需要判断普通闰年
                    if (i % 4 == 0) {
                        count ++;
                        System.out.print(i + ",");
                    }
                }

            }
            System.out.println("一共有"+count+"个闰年");
        }

    }

Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏_第2张图片

3.判断一个数是否是素数

public class Homework {
    public static void main(String[] args) {
        int a = 4;
        int b = 7;
        System.out.println(isPrimeNum(a));
        System.out.println(isPrimeNum(b));
    }

//输入一个数,判断是否是素数(只能被自己和1整除的数,1不是素数
    public static boolean isPrimeNum(int num){
        if (num <= 1){
            return false;
        }
        //说明num现在大于等于2,判断从2到num之间有没有因子
        //从2开始判断i能不能被num整除
        for (int i = 2; i < num; i++) {
            //出现一个能整除的,一定不是素数
            if (num % i == 0){
                //i是num的因子
                return false;
            }

        }
        //从2到num之间没有任何一个因子,说明一定是个素数
        return true;
    }
    }

Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏_第3张图片

4.打印1到100之间的所有素数

public class Homework {
    public static void main(String[] args) {
        printPrimeNum();
    }
 //4.打印1到100的所有素数
    public static void printPrimeNum(){
        int count = 0;
        //i从2到100判断是否是素数
        for (int i = 2; i < 100; i++) {
            //内部循环判断从2到i有没有因子
            //实际判断i是否是素数
            //引入标志位 判断i是否是素数
            boolean flag = true;
            for (int j = 2; j < i; j++) {
                if (i % j == 0){
                    //此时j是i的因子,i不是素数
                    flag = false;
                    break;
                }
            }
            if (flag){
                count ++;
                //此时i是个素数
                System.out.println(i + ",");
            }
        }
        System.out.println("1-100一共有:"+count+"个素数");
    }
    }

Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏_第4张图片

5.完成猜数字游戏

用户输入数字,判断该数字是大于,小于,还是等于随机生成的数字,等于的时候退出程序

public class Homework {
    public static void main(String[] args) {
       fun();
    }
//5.完成猜数字游戏,用户输入数字,判断该数字是大于,小于,还是等于随机生成的数字,等于的时候退出程序
    public static void fun(){
        Scanner scanner = new Scanner(System.in);
        Random random = new Random();
        //生成一个1到100的随机数
        int toGus = random.nextInt(100);
        System.out.println(toGus);
        while (true){
            System.out.println("请输入一个数字");
            int num = scanner.nextInt();
            if (num < toGus){
                System.out.println("猜小了!");
            }else if (num > toGus){
                System.out.println("猜大了!");
            }else{
                System.out.println("恭喜您 猜对了!");
                break;
            }
        }
    }
    }

Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏_第5张图片

6.求出100-999之间的所有水仙花数并输出。

public class Homework {
    public static void main(String[] args) {
        printShuiXianHua();
    }
//6.求出100-999之间的所有水仙花数并输出。
    //水仙花数是指一个三位数,其余各位数字的立方和恰好等于该数本身
    public static void printShuiXianHua(){
        for (int i = 100; i < 999; i++) {
            //要把一个三位数的个位,十位,百位拆分出来
            int gewei = i % 10;
            //123 % 10 = 3
            int baiwei = i / 100;
            //123 / 100 = 1
            int shiwei = i / 10 % 10;
            int sum = gewei * gewei *gewei + shiwei * shiwei * shiwei +
                    baiwei * baiwei * baiwei;
            if (i == sum){
                System.out.println(i);
            }

        }
    }
    }

Java——求9的个数and求1000到2000之间的闰年and判断一个数是否是素数and4.打印1到100之间的所有素数and完成猜数字游戏_第6张图片

你可能感兴趣的:(java初阶,java,开发语言)