java 计算器,要求计算三个数字的加减乘除

java 计算器,要求计算三个数字的加减乘除,第1张

import java.io.InputStreamReader

public class D { /**

* @param args

* @throws Exception

*/

public static void main(String[] args) throws Exception {

//获取输入流

BufferedReader br = new BufferedReader(new InputStreamReader(System.in))

//临时存放用户输入的数字

String tm = ""

//计算器 3次一个循球

int count = 1

//存放三次输入的数值

int[] ary = new int[3]

//求各后的变量

int sum = 0

//求积后的变量

int agr = 1

//死循坏

while(true){

//当4次时,表一个循环已经结束,得进行初始化。从新开始,并打印上一次结果

if(count==4){

System.out.println("("+ary[0]+" "+ary[1]+" "+ary[2]+")三个数的和为: "+sum+" 三个数的积为: "+agr)

count=1

sum = 0

agr = 1

}

//提示语

System.out.print("请输入第"+count+"个数字:\t")

//得到用户输入的值

tm = br.readLine()

//输入必须数字

if(tm.matches("^[0-9]+$")){

//存放数字

ary[count-1] = Integer.parseInt(tm)

//求和

sum+=ary[count-1]

//求积

agr*=ary[count-1]

//循环计算自加

count++

}else{

//如果是输入exit,程序结束

if("exit".equals(tm)) break

//非数字,提示语打印

System.out.println("\t只能输入数字 "+tm+"错误")

//非数字,继续执行当前循坏,直至本次用户输入正确后,方可进行下一次循环

continue

}

}

}

}

改变数据类型试试 类似这样吧 #include double gongbeishu(double b,double d) { double i,maxmax=b>d?b:dfor(i=maxi++) if((int)(i)%(int)(b)==0&&(int)(i)%(int)(d)==0) breakreturn i} double gongyueshu(double a,double c) { double i,minmin=amin) i=1return i} void main() { double a,b,c,ddouble beishu1,beishu2,fenzihe0,fenmu,fenzihe1scanf("%lf/%lf %lf/%lf",&a,&b,&c,&d)beishu1=gongbeishu(b,d)/bbeishu2=gongbeishu(b,d)/dfenzihe0=beishu1*a+beishu2*cfenmu=gongbeishu(b,d)fenzihe1=fenzihe0/gongyueshu(fenzihe0,fenmu)fenmu=fenmu/gongyueshu(fenzihe0,fenmu)printf("%lf %lf/%lf\n",a/b+c/d,fenzihe1,fenmu)}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11397015.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存