怎样用java 实现计算器的 算法
关注:211 答案:3 mip版
解决时间 2021-01-27 04:00
提问者心死旳很干净
2021-01-26 14:50
怎样用java 实现计算器的 算法
最佳答案
二级知识专家在時光深處躲貓貓
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();
};
}
全部回答
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);
}
}
2楼棄療尐钕
2021-01-26 16:18
用jsp做的啊
计算器
第一个数
第二个数
计算结果
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
→点此我要举报以上信息!←
推荐资讯
大家都在看