java练习题

public class JavaText {
    public static void main(String[] args) {
        getTriangle(6);
    }

    /**
     * <pre>
     * [機 能] 1.打印 :--------------------------------------------------
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * </pre>
     */
    /*1. 打印 :--------------------------------------------------*/
    public static void printLen(){
        System.out.println("--------------------------------------------------");
    }

    /**
     * <pre>
     * [機 能] 2.求两个浮点数之商
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入的浮点数1
     * @param number2 传入的浮点数2
     * </pre>
     */
    /*2.求两个浮点数之商。*/
    public static void getTrade(float number1,float number2) {
        System.out.println(number1/number2);
    }

    /**
     * <pre>
     * [機 能] 3.对一个数四舍五入取整
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void getInt(double number1){
        System.out.println(number1+"四舍五入取整=>"+Math.round(number1));
    }

    /**
     * <pre>
     * [機 能] 4.判断一个数是否为奇数
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void getOdd(int number1) {
        if ((number1%2)==1) {
            System.out.println(number1+"是奇数");
        } else {
            System.out.println(number1+"不是奇数");
        }
    }

    /**
     * <pre>
     * [機 能]  5.求一个数的绝对值。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void getAbsolute(Integer number1) {
        System.out.println(number1+"绝对值为"+Math.abs(number1));
    }

    /**
     * <pre>
     * [機 能] 求两个数的最大值。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值1
     * @param number2 传入数值2
     * </pre>
     */
    public static void getMaxValue(int number1,int number2) {
        if (number1 > number2) {
            System.out.println("最大值为:"+number1);
        } else if (number1 < number2) {
            System.out.println("最大值为:"+number2);
        }

    }

    /**
     * <pre>
     * [機 能] 7.求三个数的最大值。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值1
     * @param number2 传入数值2
     * @param number3 传入数值3
     * </pre>
     */
    public static void getMax(int number1, int number2, int number3){
        if (number1 > number2 && number1 > number3) {
            System.out.println("最大值为"+ number1);
        }else if (number2 > number1 && number2 > number3) {
            System.out.println("最大值为"+ number2);
        } else if (number3 > number2 && number3 > number1) {
            System.out.println("最大值为"+ number3);
        }
    }

    /**
     * <pre>
     * [機 能] 8.求 1-n 之和。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static  void getSum(int number1){
        int sum = 0;
        for (int i = 0;i <= number1; i++) {
            sum += i;
        }
        System.out.println("1-n之和为"+ sum);

    }

    /**
     * <pre>
     * [機 能] 9.求 1-n中的奇数之和。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入计算奇数和的最大值区间
     * </pre>
     */
    public static void getOddSum(int number1){
        int sum = 0;
        for (int i = 0;i <= number1; i++) {
            if ((i%2)==1) {
                sum += i;
            }

        }
        System.out.println("1-n中的奇数之和为"+ sum);
    }

    /**
     * <pre>
     * [機 能] 10.打印自2012年起n年内的所有闰年
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入大于2012的年份
     * </pre>
     */
    public static void getLeapYear(int number1) {
        //能被4整除不能被100整除
        //能被400整除
        for (int year = 2012; year <= number1; year++) {
            if ((year% 4== 0)&& (year % 100 != 0)) {
                System.out.println("自 2012 年起,闰年有"+year);
            } else if (year % 400 == 0) {
                System.out.println("自 2012 年起,闰年有"+year);
            }
        }

    }

    /**
     * <pre>
     * [機 能] 11.打印 n 行星号组成的等腰三角形。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入打印三角形的层数
     * </pre>
     */
    public static void getTriangle(int number1) {
        for (int i = 1; i <= number1; i++) {
            for (int k = number1 ; k >=i; k--) {
                System.out.print(" ");
            }
            for (int k = 0; k < 2*i-1; k++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }

    /**
     * <pre>
     * [機 能] 12.求两个正整数的最小公倍数。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void getLeastCommonMultiple(int number1, int number2) {
        int max = (number1 > number2)? number1:number2;
        for (int i = max; i < number1*number2;i++){
            if (i%number1==0 && i%number2==0) {
                System.out.println("最小公倍数"+i);
            }
        }

    }

    /**
     * <pre>
     * [機 能] 判断一个数是否为质数。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void isPrime(int number1) {
        // 一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数
        int count = 0;
        for (int i = 1; i <= number1; i++) {
            if (number1%i==0) {
                count++;
            }
        }
        if (count == 2) {
            System.out.println(number1+"是质数");
        } else {
            System.out.println(number1+"不是质数");
        }

    }

    /**
     * <pre>
     * [機 能] 14.求两个正整数的最大公约数
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入正整数值1
     * @param number2 传入正整数值2
     * </pre>
     */
    public static void getGreatestCommonDivisor(int number1, int number2) {
        // 使用辗转法求取最大公约数
        int number3 = number1 % number2;
        while (number1 % number2 !=0) {
            number1 = number2;
            number2 = number3;
            number3 = number1 % number2;
        }
        System.out.println("最大公约数为"+number2);

    }

    /**
     * <pre>
     * [機 能]  15. 求一个正整数 n 以内的质数。
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/10 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void getPrimeByParam(int number1) {
        for (int k = 1; k <= number1; k++){
            // 一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数
            int count = 0;
            for (int i = 1; i <= k; i++) {
                if (k%i==0) {
                    count++;
                }
            }
            if (count == 2) {
                System.out.println(k+"是质数");
            }
        }
    }

    /**
     * <pre>
     * [機 能] 16.利用递归算法求 1-n 之和。
     * [説 明] 由于该方法有返回值,因此必须打印输出该方法
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static int getRecursionSum(int number1) {
        if (number1 == 1) {
            return 1;
        } else {
            return number1+getRecursionSum(number1-1);
        }
    }

    /**
     * <pre>
     * [機 能] 17.1 利用递推算法求 n!
     * [説 明] 无
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static void getRecursiveFactorial(int number1) {
        int count = 1;
        for (int i = 0; i < number1; i++) {
            count *=i;
        }
        System.out.println("递推求阶乘"+ count);
    }

    /**
     * <pre>
     * [機 能] 17.2 使用递归求取n的阶乘
     * [説 明] 由于该方法有返回值,因此必须打印输出该方法
     * [備 考] 无
     * @author [作 成] 2023/03/13 陈海瑶
     * @param number1 传入数值
     * </pre>
     */
    public static int getRecursiveFactorial1(int number1) {
        if (number1 == 1) {
            return 1;
        }
        return number1*getRecursiveFactorial1(number1-1);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值