Day22-20260118

作业

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

思路推荐:

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

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

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

  4. 输出结果

java 复制代码
package com.jiaguangqing.method;

import java.util.Scanner;

public class DemoZuoYe {
    public static double add(double a,double b){
        return a+b;
    }//加法
    public static double subtract(double a,double b){
        return a-b;
    }//减法
    public static double multiply(double a,double b){
        return a*b;
    }//乘法
    public static double divide(double a,double b){
        if (b==0){
            System.out.println("除数不能为"0"!");
        }
        return a/b;
    }//除法
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        boolean on = true;
        while(on){
            System.out.println("欢迎使用贾光清的计算器!");
            System.out.println("1:加法运算!");
            System.out.println("2:减法运算!");
            System.out.println("3:乘法运算!");
            System.out.println("4:除法运算!");
            System.out.println("0:退出!");
            System.out.println("请选择你要进行的运算(输入对应的数字即可)!");
            int choice = scanner.nextInt();
            switch (choice){
                case 1://加法
                    System.out.println("请输入第一个加数:");
                    double add1 = scanner.nextDouble();
                    System.out.println("请输入第二个加数:");
                    double add2 = scanner.nextDouble();
                    double addSum = add(add1,add2);
                    System.out.println("结果:"+add1+"+"+add2+"="+addSum);
                    break;
                case 2://减法
                    System.out.println("请输入被减数:");
                    double subtract1 = scanner.nextDouble();
                    System.out.println("请输入减数:");
                    double subtract2 = scanner.nextDouble();
                    double subtractDifference = subtract(subtract1,subtract2);
                    System.out.println("结果:"+subtract1+"-"+subtract2+"="+subtractDifference);
                    break;
                case 3://乘法
                    System.out.println("请输入第一个乘数:");
                    double multiply1 = scanner.nextDouble();
                    System.out.println("请输入第二个乘数:");
                    double multiply2 = scanner.nextDouble();
                    double multiplyProduct = multiply(multiply1,multiply2);
                    System.out.println("结果:"+multiply1+"*"+multiply2+"="+multiplyProduct);
                    break;
                case 4://除法
                    System.out.println("请输入被除数:");
                    double divide1 = scanner.nextDouble();
                    System.out.println("请输入除数:");
                    double divide2 = scanner.nextDouble();
                    double divideQuotient = divide(divide1,divide2);
                    System.out.println("结果:"+divide1+"/"+divide2+"="+divideQuotient);
                    break;
                case 0://退出
                    on = false;
                    System.out.println("程序已退出!");
                    break;
                default:
                    System.out.println("输入错误,请选择0~4之间的数字");
            }
        }
        scanner.close();
    }
}
java 复制代码
欢迎使用贾光清的计算器!
1:加法运算!
2:减法运算!
3:乘法运算!
4:除法运算!
0:退出!
请选择你要进行的运算(输入对应的数字即可)!
1
请输入第一个加数:
8
请输入第二个加数:
9
结果:8.0+9.0=17.0
欢迎使用贾光清的计算器!
1:加法运算!
2:减法运算!
3:乘法运算!
4:除法运算!
0:退出!
请选择你要进行的运算(输入对应的数字即可)!
2
请输入被减数:
9
请输入减数:
8
结果:9.0-8.0=1.0
欢迎使用贾光清的计算器!
1:加法运算!
2:减法运算!
3:乘法运算!
4:除法运算!
0:退出!
请选择你要进行的运算(输入对应的数字即可)!
3
请输入第一个乘数:
8
请输入第二个乘数:
9
结果:8.0*9.0=72.0
欢迎使用贾光清的计算器!
1:加法运算!
2:减法运算!
3:乘法运算!
4:除法运算!
0:退出!
请选择你要进行的运算(输入对应的数字即可)!
4
请输入被除数:
9
请输入除数:
8
结果:9.0/8.0=1.125
欢迎使用贾光清的计算器!
1:加法运算!
2:减法运算!
3:乘法运算!
4:除法运算!
0:退出!
请选择你要进行的运算(输入对应的数字即可)!
4
请输入被除数:
9
请输入除数:
0
除数不能为"0"!
结果:9.0/0.0=Infinity
欢迎使用贾光清的计算器!
1:加法运算!
2:减法运算!
3:乘法运算!
4:除法运算!
0:退出!
请选择你要进行的运算(输入对应的数字即可)!
0
程序已退出!

进程已结束,退出代码为 0
相关推荐
雪碧聊技术2 小时前
1、LangChain4j 名字的寓意
java·大模型·langchain4j
Ulyanov2 小时前
战场地形生成与多源数据集成
开发语言·python·算法·tkinter·pyside·pyvista·gui开发
风生u2 小时前
bpmn 的理解和元素
java·开发语言·工作流·bpmn
C+-C资深大佬2 小时前
C++数据类型
开发语言·c++·算法
ID_180079054732 小时前
日本乐天商品详情API接口的请求构造与参数说明
开发语言·python·pandas
派大鑫wink3 小时前
【Day34】Servlet 进阶:会话管理(Cookie vs Session)
java·开发语言·学习方法
多米Domi0113 小时前
0x3f 第35天 电脑硬盘坏了 +二叉树直径,将有序数组转换为二叉搜索树
java·数据结构·python·算法·leetcode·链表
猫天意3 小时前
【深度学习小课堂】| torch | 升维打击还是原位拼接?深度解码 PyTorch 中 stack 与 cat 的几何奥义
开发语言·人工智能·pytorch·深度学习·神经网络·yolo·机器学习
zqmattack3 小时前
SQL优化与索引策略实战指南
java·数据库·sql