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
相关推荐
哦虎!3 小时前
【JavaEE】网络初识
java
for_ever_love__3 小时前
MySQL ORDER BY 排序优化:从 Using filesort 到索引有序扫描(含双路 / 单路排序原理)
java·mysql·优化·存储·by·order·filesort
程序猿追4 小时前
kotlin-retry 接入鸿蒙后,怎样确认它真的会停止重试
开发语言·kotlin·harmonyos
我是人✓4 小时前
Java文件上传三方式对比:从传统到SpringBoot
java·开发语言
智能直播4 小时前
网络RTMP拉流不卡顿、声音不同步,一文讲透缓冲区、时间戳
开发语言·ffmpeg·php·音视频·视频编解码
欣栀♡4 小时前
JVM 频繁 Full GC 先看日志括号里的 cause,jstat 的 FGC 在 JDK 8 上会骗人
java·jvm
IT研究室5 小时前
最新计算机毕业设计选题推荐-基于spring boot的葡萄酒文化宣传网站-网站-文档指导-Java-springboot
java·spring boot·课程设计
慧都小项5 小时前
MyEclipse 中创建和测试 JAX-RS REST 接口:从项目配置到 REST Explorer
java·restful·myeclipse·jax-rs
Wang's Blog5 小时前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务提供者
java·dubbo·交友
墨云安全5 小时前
内网资产无法暴露到公网,怎么做安全检测?2026 年内网渗透测试的落地路径
开发语言·安全·网络安全·渗透测试·php