Java学习Day12

Java学习Day12

递归(并不是最好的方法,只作为思路)

【例1】求任何数字的阶乘

public class JoJo {
    public static void main(String[] args) {

        System.out.println(f(3));
    }

    public static int f(int n) {


        if (n == 1){
            return 1;
        }else{
            return n * f(n-1);
        }



    }
}

方法练习

【例2】写一个计算器,要求实现加减乘除功能,并且能够循环接收新的数据,通过用户交互实现

思路推荐:

1.写4个方法:加减乘除

2.利用循环加switch进行用户交互

3.传递需要操作的两个数

4.输出结果

import java.util.Scanner;
public class JoJo {
    public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in) ;
    scanner.hasNextLine() ;
    String Operator = scanner.nextLine();
    switch (Operator){
        case "+":
            Addition( 0,0) ;
            break;
        case "-":
            Subtraction(0,0) ;
            break;
        case"*":
            Multiplication(0,0);
            break;
        case"/":
            Division(0,0);
            break;
        default:
            System.out.println("输入不合法");
    }



    }
    //加法
    public static void  Addition(int num1,int num2){
        int result = 0;
        Scanner scanner = new Scanner(System.in);
        scanner.hasNextInt() ;
        num1  = scanner.nextInt() ;
        num2  = scanner.nextInt() ;
        result = num1 + num2 ;
        System.out.println(result );
        scanner.close() ;
    }

    //减法
    public static void Subtraction(int num1,int num2){
        int result = 0;
        Scanner scanner = new Scanner(System.in);
        scanner.hasNextInt() ;
        num1  = scanner.nextInt() ;
        num2  = scanner.nextInt() ;
        result = num1 - num2 ;
        System.out.println(result );
        scanner.close() ;
    }

    //乘法
    public static void Multiplication(int num1,int num2){
        int result = 0;
        Scanner scanner = new Scanner(System.in);
        scanner.hasNextInt() ;
        num1  = scanner.nextInt() ;
        num2  = scanner.nextInt() ;
        result = num1 * num2 ;
        System.out.println(result );
        scanner.close() ;
    }

    //除法
    public static void Division(double  num1,double num2){
        double result = 0;
        Scanner scanner = new Scanner(System.in);
        scanner.hasNextDouble() ;
        num1  = scanner.nextDouble() ;//用double定义num1 num2,若输入整数可以被强制转化
        num2  = scanner.nextDouble() ;
        result = num1 / num2 ;
        System.out.println(result );
        scanner.close();
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值