Day22-20260118

news/2026/1/18 19:31:54/文章来源:https://www.cnblogs.com/jiaguangqing/p/19498991

作业

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

思路推荐:

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

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

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

  4. 输出结果

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();}
}
欢迎使用贾光清的计算器!
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

摘要

本文实现了一个基于Java的交互式计算器程序,具有加减乘除四种运算功能。程序通过定义四个独立的方法(add、subtract、multiply、divide)实现基本运算,采用while循环和switch结构实现用户交互界面。用户可以循环输入选择(1-4对应不同运算,0退出),程序会提示输入操作数并显示运算结果。特别处理了除数为0的情况,会提示错误但仍返回Infinity结果。程序运行示例展示了完整的加法、减法、乘法、除法(包括除零)操作流程,最后可通过输入0正常退出。该实现展示了Java中方法定义、循环控制、条件判断和用户交互的基本应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1179204.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

强烈安利9个AI论文写作软件,专科生搞定毕业论文!

强烈安利9个AI论文写作软件,专科生搞定毕业论文! 论文写作的救星,AI 工具如何改变你的学术之路 对于专科生来说,毕业论文可能是大学生活中最令人头疼的一关。从选题、查资料到撰写、修改,每一步都充满了挑战。而如今&a…

【雷达跟踪】基于matlab面向目标跟踪的雷达干扰方法:提升航空器战场生存力的关键技术【含Matlab源码 14983期】复现含文献

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…

【雷达相控阵】毫米波相控阵中空间Zadoff-Chu调制快速波束对准【含Matlab源码 14977期】

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

卷积神经网络的开端:$LeNet-5$

卷积神经网络的开端:\(LeNet-5\)[!NOTE] LeNet-5神经网络是1998年YANN LECUN等人在论文Gradient-Based Learning Applied to Document Recognition中提出的一种颠覆性的算法。 说实在的该方法本来是用来解决手写字母也…

【雷达相控阵】基于matlab毫米波相控阵中空间Zadoff-Chu调制快速波束对准【含Matlab源码 14977期】

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…

【心电信号ECG】SVM心电图心搏检测与分类【含Matlab源码 14982期】复现含文献

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

【心电信号ECG】基于matlab SVM心电图心搏检测与分类【含Matlab源码 14982期】复现含文献

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…

【心血管疾病】心脏病数据集Kaggle医学特征二元分类预测心血管疾病【含Matlab源码 14984期】含报告

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

社交网络数据科学:完整项目实战指南

社交网络数据科学:完整项目实战指南 引言 痛点引入:你可能遇到的「社交网络分析困境」 作为数据科学爱好者,你是否曾有过这样的困惑: 想学社交网络分析,但看着「图论」「中心性」「社区发现」等术语望而却步&#…

Hive与DynamoDB集成:云原生大数据方案

Hive与DynamoDB集成:云原生大数据方案 关键词:Hive、DynamoDB、云原生、大数据集成、数据处理 摘要:本文聚焦于Hive与DynamoDB的集成,旨在探讨云原生环境下的大数据解决方案。首先介绍了Hive和DynamoDB的背景信息,包括它们的特点和适用场景。接着详细阐述了两者集成的核心…

【创新未发表】鸡群算法CSO和自适应双种群协同鸡群算法ADPCCSO无人机避障三维航迹规划【含Matlab源码 14980期】

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

Flutter × OpenHarmony 跨端汇率转换应用:货币数据模型与页面实现

文章目录Flutter OpenHarmony 跨端汇率转换应用:货币数据模型与页面实现前言背景Flutter OpenHarmony 跨端开发介绍开发核心代码代码解析心得总结Flutter OpenHarmony 跨端汇率转换应用:货币数据模型与页面实现 前言 在全球化经济背景下,…

【无人机三维路径规划】鸡群算法CSO和自适应双种群协同鸡群算法ADPCCSO复杂山地模型下无人机路径规划【含Matlab源码 14981期】

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

【雷达跟踪】面向目标跟踪的雷达干扰方法:提升航空器战场生存力的关键技术【含Matlab源码 14983期】复现含文献

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞&…

数电实验7【计数器和跑马灯设计实验报告】数字电路 逻辑与计算机设计 logisim

上一篇:数电实验6【寄存器及手动加法设计实验报告】数字电路 逻辑与计算机设计 logisim 目录 实验资料 实验报告 一、实验目的 二、实验环境 三、实验内容 四、实验步骤 五、实验心得 实验资料 点击下载 实验报告 一、实验目的 理解时钟的作用 能够设…

人工智能之核心基础 机器学习 第十七章 Scikit-learn工具全解析

人工智能之核心基础 机器学习 第十七章 Scikit-learn工具全解析 文章目录人工智能之核心基础 机器学习17.1 Scikit-learn 简介与安装📌 是什么?✅ 核心优势🔧 安装(推荐使用虚拟环境)17.2 Scikit-learn 核心 API 使用…

完整教程:C#用API添另静态路由表

完整教程:C#用API添另静态路由表2026-01-18 19:20 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !impor…

别瞎忙了,你的力气其实很贵

人生下半场:把力气,用在真正重要的地方卸下行囊,看见远方深夜那个突然冒出来的念头嘿,老朋友,咱们先不聊大道理,聊个具体的场景。你有没有过这种时刻? 周五晚上十点多,终于关上电脑&…

消除乱码-UTF8字符转换

编码格式是多样的,既繁华又让人迷惑。针对IUP和GTK而言,正确显示汉字的方法:1. IUP,设置其本身使用 UTF8,然后外部调用时给它UTF8字符;2. GTK,内部使用的是UTF8,直接送UTF8字符给它即…

基于springboot的甘肃非物质文化网站的设计与实现项目源码 java毕设 免费分享

全套项目网盘打包下载:https://pan.quark.cn/s/5ddf68c8d7db项目清单:该系统采用B/S架构,基于SSM框架和MySQL数据库开发,主要包含前端用户系统和后台管理系统两大模块。一、 前台用户系统功能(面向普通访客/会员&#…