java 计算器算法_怎样用java 实现计算器的 算法

怎样用java 实现计算器的 算法

关注:211  答案:3  mip版

解决时间 2021-01-27 04:00

e6cb1a03ad541b3098697807b7bf1798.png

提问者心死旳很干净

2021-01-26 14:50

怎样用java 实现计算器的 算法

最佳答案

e6cb1a03ad541b3098697807b7bf1798.png

二级知识专家在時光深處躲貓貓

2021-01-26 16:03

package com.t.core.util;

publicclassMathUtil {

// ----------------三角运算----------------------

publicstaticdouble toDegress(double degress) {

return Math.toDegrees(degress);

};

publicstaticdouble toRadians(double radians) {

return Math.toRadians(radians);

};

publicstaticdouble aCos(double acos) {

return Math.acos(acos);

};

publicstaticdouble aSin(double asin) {

return Math.asin(asin);

};

publicstaticdouble aTan(double atan) {

return Math.atan(atan);

};

publicstaticdouble cos(double cos) {

return Math.cos(cos);

};

publicstaticdouble cosH(double cosh) {

return Math.cosh(cosh);

};

publicstaticdouble sin(double sin) {

return Math.sin(sin);

};

publicstaticdouble sinH(double sinh) {

return Math.sinh(sinh);

};

publicstaticdouble tan(double tan) {

return Math.tan(tan);

};

publicstaticdouble tanH(double tanh) {

return Math.tanh(tanh);

};

publicstaticdouble aTan2(double x, double y) {

return Math.atan2(x,y);

};

// ----------------取整运算------------------

publicstaticdouble floor(double number) {

return Math.floor(number);

};

publicstaticdouble ceil(double number) {

return Math.ceil(number);

};

publicstaticdouble round(double number) {

return Math.round(number);

};

publicstaticfloat round(float number) {

return Math.round(number);

};

publicstaticdouble sqrt(double number) {

return Math.sqrt(number);

};

publicstaticdouble cbrt(double number) {

return Math.cbrt(number);

};

publicstaticdouble exp(double number) {

return Math.exp(number);

};

publicstaticdouble hypot(double number, double number2) {

return Math.hypot(number,number2);

};

publicstaticdouble IEEEremainder(double number, double number2) {

return Math.IEEEremainder(number,number2);

};

publicstaticdouble pow(double number, double number2) {

return Math.pow(number,number2);

};

publicstaticdouble log(double number) {

return Math.log(number);

};

publicstaticdouble log10(double number) {

return Math.log10(number);

};

publicstaticdouble log1p(double number) {

return Math.log1p(number);

};

// ------------符号相关运算------------------

publicstaticdouble abs(double number) {

return Math.abs(number);

};

publicstaticint abs(int number) {

return Math.abs(number);

};

publicstaticfloat abs(float number) {

return Math.abs(number);

};

publicstaticlong abs(long number) {

return Math.abs(number);

};

publicstaticdouble copySign(double magnitude, double sign) {

return Math.copySign(magnitude,sign);

};

publicstaticfloat copySign(float magnitude, float sign) {

return Math.copySign(magnitude,sign);

};

publicstaticfloat copySign(float number) {

return Math.signum(number);

};

publicstaticdouble copySign(double number) {

return Math.signum(number);

};

publicstaticdouble max(double number, double number2) {

return Math.max(number,number2);

};

publicstaticint max(int number, int number2) {

return Math.max(number,number2);

};

publicstaticfloat max(float number, float number2) {

return Math.max(number,number2);

};

publicstaticlong max(long number, long number2) {

return Math.max(number,number2);

};

publicstaticlong min(long number, long number2) {

return Math.min(number,number2);

};

publicstaticint min(int number, int number2) {

return Math.min(number,number2);

};

publicstaticfloat min(float number, float number2) {

return Math.min(number,number2);

};

publicstaticdouble min(double number, double number2) {

return Math.min(number,number2);

};

publicstaticdouble nextAfter(double start, double direction) {

return Math.nextAfter(start,direction);

};

publicstaticfloat nextAfter(float start, float direction) {

return Math.nextAfter(start,direction);

};

publicstaticfloat nextUp(float number) {

return Math.nextUp(number);

};

publicstaticdouble nextUp(double number) {

return Math.nextUp(number);

};

publicstaticdouble random() {

return Math.random();

};

}

全部回答

e6cb1a03ad541b3098697807b7bf1798.png

1楼轉角離身

2021-01-26 16:42

说实在的,你写的这个计算器不怎么样。特别是布局。

我给你一个很简单的吧。你自己学习一下。。

import java.awt.*;

import java.awt.event.*;

public class jisuanqi extends windowadapter {

panel p1 = new panel();

panel p2 = new panel();

panel p3 = new panel();

textfield txt;

private button[] b = new button[17];

private string ss[] = { "7", "8", "9", "+", "4", "5", "6", "-", "1", "2",

"3", "*", "清空", "0", "=", "/", "关闭" };

static double a;

static string s, str;//定义变量 创建对像

public static void main(string args[]) {

(new jisuanqi()).frame();

}

public void frame() {

frame fm = new frame("简单计算器");

for (int i = 0; i <= 16; i++) {

b[i] = new button(ss[i]);

}

for (int i = 0; i <= 15; i++) {

p2.add(b[i]);

}

//创建按钮 并添加到p2

b[16].setbackground(color.yellow);

txt = new textfield(15);

txt.seteditable(false);

for (int i = 0; i <= 16; i++) {

b[i].addactionlistener(new buttonlistener());//添加监听器

}

b[16].addactionlistener(new close());

fm.addwindowlistener(this);

fm.setbackground(color.red);

p1.setlayout(new borderlayout());

p1.add(txt, "north");

p2.setlayout(new gridlayout(4, 4));

p3.setlayout(new borderlayout());

p3.add(b[16]);

fm.add(p1, "north");

fm.add(p2, "center");

fm.add(p3, "south");

fm.pack();

fm.setvisible(true);//都是些窗中设置 添加相关组件和监听器

}

public void windowclosing(windowevent e) {

system.exit(0);//退出系统

}

class buttonlistener implements actionlistener {//编写监听器事件 通过按键得出给果

public void actionperformed(actionevent e) {

button btn = (button) e.getsource();

if (btn.getlabel() == "=") {

jisuan();

str = string.valueof(a);

txt.settext(str);

s = "";

} else if (btn.getlabel() == "+") {

jisuan();

txt.settext("");

s = "+";

} else if (btn.getlabel() == "-") {

jisuan();

txt.settext("");

s = "-";

} else if (btn.getlabel() == "/") {

jisuan();

txt.settext("");

s = "/";

} else if (btn.getlabel() == "*") {

jisuan();

txt.settext("");

s = "*";

} else {

txt.settext(txt.gettext() + btn.getlabel());

if (btn.getlabel() == "清空")

txt.settext("");

}

}

public void jisuan() {//编写具体计算方法

if (s == "+")

a += double.parsedouble(txt.gettext());

else if (s == "-")

a -= double.parsedouble(txt.gettext());

else if (s == "*")

a *= double.parsedouble(txt.gettext());

else if (s == "/")

a /= double.parsedouble(txt.gettext());

else

a = double.parsedouble(txt.gettext());

}

}

}

class close implements actionlistener {//退出

public void actionperformed(actionevent e) {

system.exit(0);

}

}

e6cb1a03ad541b3098697807b7bf1798.png

2楼棄療尐钕

2021-01-26 16:18

用jsp做的啊

计算器

第一个数

第二个数

计算结果

我要举报

如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

→点此我要举报以上信息!←

推荐资讯

大家都在看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值