【Java】练习题:数字判断

练习题1:判断数值相等

使用键盘输入三个整数。确定这些数字中是否至少有一对相等的数字。
如果存在这样一对数字,则显示该 数字,并用 空格 分隔。
如果三个数字 全部相等,则 全部显示

package main;
import java.io.*;

/*
使用键盘输入三个整数。确定这些数字中是否至少有一对相等的数字。
如果存在这样一对数字,则显示该数字,并用空格分隔。
如果三个数字全部相等,则全部显示。
 */
public class test {
    public static void main(String[] args) throws Exception {
        // 从键盘获取数值
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String num1 = reader.readLine();
        String num2 = reader.readLine();
        String num3 = reader.readLine();

        int numbers1 = Integer.parseInt(num1);
        int numbers2 = Integer.parseInt(num2);
        int numbers3 = Integer.parseInt(num3);

        // 判断数值
        if (numbers1 == numbers2 && numbers1 == numbers3) {
            System.out.println(numbers1 + " " + numbers2 + " " + numbers3);
        } else if (numbers1 == numbers3) {
            System.out.println(numbers1 + " " + numbers3);
        } else if (numbers2 == numbers3) {
            System.out.println(numbers2 + " " + numbers3);
        } else if (numbers1 == numbers2) {
            System.out.println(numbers1 + " " + numbers2);
        }
    }
}

练习题2:判断闰年

判断闰年的条件:

  1. 可以被 400 整除
  2. 可以被 4 整除,但不可以被 100 整除
package main;
import java.io.*;
/*
* 判断闰年的条件:
* 1. 可以被 400 整除
* 2. 可以被 4 整除,但不可以被 100 整除
* */

public class test {
    public static void main(String[] args) throws Exception {
        // 从键盘获取数字
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String year = reader.readLine();
        int newYear = Integer.parseInt(year);

        // 判断是否是闰年
        if (newYear % 400 == 0) {
            System.out.println("这一年包含的天数:366");
        } else if (newYear % 100 != 0 && newYear % 4 ==0) {
            System.out.println("这一年包含的天数:366");
        } else {
            System.out.println("这一年包含的天数:365");
        }
    }
}

练习题3:最小值

使用键盘输入两个整数,然后显示最小值。
如果这两个数字相等,则显示其中任一数字。

package main;
import java.io.*;

/*
使用键盘输入两个整数,然后显示最小值。
如果这两个数字相等,则显示其中任一数字。
 */
public class test {
    public static void main(String[] args) throws Exception {
        // 从键盘获取数值
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String num1 = reader.readLine();
        String num2 = reader.readLine();

        int n1 = Integer.parseInt(num1);
        int n2 = Integer.parseInt(num2);

        // 判断数值
        if (n1 == n2) {
            System.out.println(n1);
        } else {
            System.out.println(Math.min(n1, n2));
        }
    }
}

练习题4:最大值

使用键盘输入四个数字,然后显示其中的最大值。
如果最大值出现多次,则只显示一次。

package main;
import java.io.*;

/*
使用键盘输入四个数字,然后显示其中的最大值。
如果最大值出现多次,则只显示一次。
 */
 public class test {
    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String num1 = reader.readLine();
        String num2 = reader.readLine();
        String num3 = reader.readLine();
        String num4 = reader.readLine();

        int n1 = Integer.parseInt(num1);
        int n2 = Integer.parseInt(num2);
        int n3 = Integer.parseInt(num3);
        int n4 = Integer.parseInt(num4);

        System.out.println(Math.max(Math.max(n1, n2), Math.max(n3, n4)));
    }
}

练习题5:降序排序

本文使用了两种方法仅供参考

使用键盘输入三个数字,然后按降序显示它们。
所显示的数字必须用空格分隔。

package main;
import java.io.*;

/*
使用键盘输入三个数字,然后按降序显示它们。
所显示的数字必须用空格分隔。
 */
public class test {
    public static void main(String[] args) throws Exception {
        // 从键盘获取数值
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String num1 = reader.readLine();
        String num2 = reader.readLine();
        String num3 = reader.readLine();

        // 字符串转换
        int n1 = Integer.parseInt(num1);
        int n2 = Integer.parseInt(num2);
        int n3 = Integer.parseInt(num3);

//        // 获取最大值和最小值
//        int max = Math.max(Math.max(n1, n2), n3);
//        int min = Math.min(Math.min(n1, n2), n3);
//
//        // 判断数值
//        if (n1 > min && n1 < max) {
//            System.out.println(max + " " + n1 + " "  + min);
//        } else if (n2 > min  && n2 < max) {
//            System.out.println(max + " " + n2 + " "  + min);
//        } else if (n3 > min  && n3 < max) {
//            System.out.println(max + " " + n3 + " "  + min);
//        } else if (n1 == n2 && n1 < max) {
//            System.out.println(max + " " + n1 + " "  + n2);
//        } else if (n1 == n3 && n1 < max) {
//            System.out.println(max + " " + n1 + " "  + n3);
//        } else if (n2 == n3 && n2 < max) {
//            System.out.println(max + " " + n2 + " "  + n3);
//        } else if (n1 == n2 && n1 > min) {
//            System.out.println(n2 + " " + n1 + " "  + min);
//        } else if (n1 == n3 && n1 > min) {
//            System.out.println(n3 + " " + n1 + " "  + min);
//        } else if (n2 == n3 && n2 > min) {
//            System.out.println(n3 + " " + n2 + " "  + min);
//        } else {
//            System.out.println(n3 + " " + n2 + " "  + n1);
//        }

        // 使用数组的方法
        int[] sort = new int[3];

        sort[0] = n1;
        sort[1] = n2;
        sort[2] = n3;

        int length = sort.length;

        // 变量数组
        for (int num = 0; num < length; num++) {
            // 遍历比较前后两个元素
            for (int value = 0; value < length; value++) {
                // 若排序错误,则进行交换
                if (value + 1 < length && sort[value] < sort[value + 1]) {
                    int val = sort[value];
                    sort[value] = sort[value + 1];
                    sort[value + 1] = val;
                }
            }
        }

        for (int k : sort) {
            System.out.print(k + " ");
        }
    }
}

练习题6:字符串长度判断

使用键盘输入两个名字。如果这两个名字相同,则显示“名字相同”。
如果这两个名字不同,但它们的长度相同,则显示“名字长度相同”。
如果这两个名字和名字长度都不相同,则不显示任何内容。

package main;
import java.io.*;

/*
使用键盘输入两个名字。如果这两个名字相同,则显示“名字相同”。
如果这两个名字不同,但它们的长度相同,则显示“名字长度相同”。
如果这两个名字和名字长度都不相同,则不显示任何内容。
 */
public class test {
    public static void main(String[] args) throws Exception {
        // 从键盘获取数值
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String name = reader.readLine();
        String repeatName = reader.readLine();

        String strName = Arrays.toString(name.split(""));
        String strRepeatName = Arrays.toString(repeatName.split(""));

        if (name.equals(repeatName)) {
            System.out.println("名字相同");
        } else if (strName.length() == strRepeatName.length()) {
            System.out.println("名字长度相同");
        }
    }
}

练习题7:判断数字唯一

使用键盘输入三个整数。其中一个数字是唯一的。
另外两个数字相同。显示不同于其他两个的数字的序号。

package main;
import java.io.*;

/*
使用键盘输入三个整数。其中一个数字是唯一的。
另外两个数字相同。显示不同于其他两个的数字的序号。
 */
public class test {
    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        int num = Integer.parseInt(reader.readLine());
        int num1 = Integer.parseInt(reader.readLine());
        int num2 = Integer.parseInt(reader.readLine());

        if (num != num2 && num1 == num2) {
            System.out.println(1);
        } else if (num == num2 && num1 != num2) {
            System.out.println(2);
        } else if (num != num2 && num == num1) {
            System.out.println(3);
        }

    }
}

练习题8:奇偶判断

从键盘输入 1 - 999 之间的整数。按如下所示显示字符串描述:
一位偶数”- 如果数字为偶数且包含一位数字,
一位奇数”- 如果数字为奇数且包含一位数字,
两位偶数”- 如果数字为偶数且包含两位数字,
两位奇数”- 如果数字为奇数且包含两位数字,
三位偶数”- 如果数字为偶数且包含三位数字,
三位奇数”- 如果数字为奇数且包含三位数字。
如果输入的数字不在 1 - 999 之间,则不显示任何内容。

package main;
import java.io.*;

/*
从键盘输入 1 - 999 之间的整数。按如下所示显示字符串描述:
“一位偶数”- 如果数字为偶数且包含一位数字,
“一位奇数”- 如果数字为奇数且包含一位数字,
“两位偶数”- 如果数字为偶数且包含两位数字,
“两位奇数”- 如果数字为奇数且包含两位数字,
“三位偶数”- 如果数字为偶数且包含三位数字,
“三位奇数”- 如果数字为奇数且包含三位数字。
如果输入的数字不在 1 - 999 之间,则不显示任何内容。
 */
 public class test {
    public static void main(String[] args) throws Exception {
        //在此编写你的代码
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        int a = Integer.parseInt(reader.readLine());

        // 判断奇偶
        if (a > 0 && a < 10) {
            if (a % 2 ==0){
                System.out.println("一位偶数");
            } else {
                System.out.println("一位奇数");
            }
        } else if (a >= 10 && a < 100) {
            if (a % 2 ==0){
                System.out.println("两位偶数");
            } else {
                System.out.println("两位奇数");
            }
        } else if (a >= 100 && a <= 999) {
            if (a % 2 ==0){
                System.out.println("三位偶数");
            } else {
                System.out.println("三位奇数");
            }
        }
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Warolitbos

如果有帮助,请我喝咖啡!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值