正文
java计算器sin代码 javaswing计算器
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
java arccos
java arccos是什么,让我们一起了解一下?
arccos是java中数学运算的三角函数方法,cos() 三角余弦,通过编程Java代码实现,常用的还有sin()为 三角正弦,tan() 三角正切,asin() 正弦的反函数,cos() 余弦的反函数,tan() 正切的反函数。
他的源代码如下:
public class MainTest { public static void main(String[] args) { //求sin值 double sin = Math.sin(3.14); System.out.println("sin3.14=" + sin); //求cos值 double cos = Math.cos(0); System.out.println("cos0=" + cos); //求tan值 double tan = Math.tan(0.785); System.out.println("tan0.785=" + tan); //求arcsin double arcsin = Math.asin(1); System.out.println("arcsin1 = " + arcsin); //求arccos double arccos = Math.acos(1); System.out.println("arccos = " + arccos); //求arctan double arctan = Math.atan(30); System.out.println("arctan30 = " + arctan); //求弧度 double radians = Math.toRadians(180); System.out.println("180度角的弧度为" + radians); //求角度 double angle = Math.toDegrees(3.141592653589793); System.out.println("π的角度数为" + angle); //求以e为底的指数 double exp = Math.exp(1); System.out.println("以e为底指数为1的数为" + exp); //求以e为底e的平方的对数 double log = Math.log(Math.E * Math.E); System.out.println("以e为底e的平方的对数" + log); //求以10为底100的对数 double log10 = Math.log10(100); System.out.println("以10为底100的对数" + log10); //求100的平方根 double sqrt = Math.sqrt(100); System.out.println("100的平方根是" + sqrt); //求27的立方根 double cbrt = Math.cbrt(27); System.out.println("27的立方根是" + cbrt); //求10除以3的余数 double rest = Math.IEEEremainder(10, 3); System.out.println("10除以3的余数为" + rest); //求0.9向上取整 double ceil = Math.ceil(0.9); System.out.println("0.9向上取整" + ceil); //求2.49向下取整 double floor = Math.floor(2.49); System.out.println("2.49向下取整" + floor); //求最接近参数的整数值(若有两个满足条件的数据则取为偶数的数据) double rint = Math.rint(3.5); System.out.println("最接近参数的整数值" + rint); //获得(1,1)坐标与x轴夹角度数 double atan2 = Math.atan2(1, 1); System.out.println("坐标(1,1)的极坐标为" + atan2); //求3的5次方 double pow = Math.pow(3, 5); System.out.println("3的5次方" + pow); //4舍5入 double round = Math.round(3.5); System.out.println("3.5四舍五入为" + round); //计算2
java计算机程序中sin如何实现
根据泰勒公式:
sin(x)=x-x^3/3!+x^5/5!+……+(-1)^(n-1)*x^(2n-1)/(2n-1)
可以使用迭代法来求sin了,如果需要精度计算,则需要bigdecimal工具来保存精确的浮点数
java 计算器代码能实现三角函数和阶乘功能
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class test{
public static void main(String [] agur){
jisuan frame = new jisuan();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setVisible(true);
}
}
class jisuan extends JFrame implements ActionListener{
private JMenuBar menubar = new JMenuBar();
private JMenu m1 = new JMenu("文件(field)");
private JMenu m2 = new JMenu("编辑(education)");
private JMenu m3 = new JMenu("帮助(help)");
private JMenuItem t1,t2,t3,t4,t5,t6,t7,t8;
private JPanel j1,j2;
private JButton b0,b1,b2,b3,b4,b5,b6,b7,b8,b9;
private JButton kaigen,qiuyu,pingfang,zengxuan,yuxuan ,jiecheng,jia,jian,cheng,chu,dengyu;
private Container contenPane = getContentPane();
private JTextField p1,p2;
private JLabel j0;
private double tem1 = 0;
private double tem2 = 0;
private double tem3 = 0;
private int biaozhi=0;
public jisuan(){
super.setTitle("简单计算器");
super.setSize(640,200);
setJMenuBar(menubar);
menubar.add(m1);
menubar.add(m2);
menubar.add(m3);
t1 = new JMenuItem("打开");
t2 = new JMenuItem("全部清零");
t3 = new JMenuItem("打开圆周率");
t4 = new JMenuItem("退出");
m1.add(t1);
m1.add(t2);
m1.add(t3);
m1.add(t4);
t5 = new JMenuItem("简单的加减计算器");
t6 = new JMenuItem("画图");
t7 = new JMenuItem("写字本");
m2.add(t5);
m2.add(t6);
m2.add(t7);
t8 = new JMenuItem("关于....");
m3.add(t8);
j1 = new JPanel();
p1 = new JTextField(40);
p1.setEditable(false);
j0 = new JLabel("请输入要计算的数字:");
// p2 = new JTextField("请输入计算的数字",10);
// p3 = new JTextField("结果是",10);
// p3.setEditable(false);
j1.add(j0);
j1.add(p1);
// j1.add(p2);
// j1.add(p3);
j2 = new JPanel();
GridLayout f = new GridLayout(3,7);
j2.setLayout(f);
b0 = new JButton("0");
b1 = new JButton("1");
b2 = new JButton("2");
b3 = new JButton("3");
b4 = new JButton("4");
b5 = new JButton("5");
b6 = new JButton("6");
b7 = new JButton("7");
b8 = new JButton("8");
b9 = new JButton("9");
// j3 = new JPanel();
j2.add(b0);
j2.add(b1);
j2.add(b2);
j2.add(b3);
j2.add(b4);
j2.add(b5);
j2.add(b6);
j2.add(b7);
j2.add(b8);
j2.add(b9);
jia = new JButton("+");
jian = new JButton("-");
cheng = new JButton("*");
chu = new JButton("/");
kaigen = new JButton("立方根");
qiuyu = new JButton("平方根");
pingfang = new JButton("平方");
zengxuan = new JButton("sin");
yuxuan = new JButton("cos");
jiecheng = new JButton("阶乘");
dengyu = new JButton("=");
j2.add(jia);
j2.add(jian);
j2.add(cheng);
j2.add(chu);
j2.add(kaigen);
j2.add(qiuyu);
j2.add(pingfang);
j2.add(zengxuan);
j2.add(yuxuan);
j2.add(jiecheng);
j2.add(dengyu);
contenPane.add(j2,BorderLayout.CENTER);
contenPane.add(j1,BorderLayout.NORTH);
b0.addActionListener(this);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
b5.addActionListener(this);
b6.addActionListener(this);
b7.addActionListener(this);
b8.addActionListener(this);
b9.addActionListener(this);
jia.addActionListener(this);
jian.addActionListener(this);
cheng.addActionListener(this);
chu.addActionListener(this);
kaigen.addActionListener(this);
qiuyu.addActionListener(this);
pingfang.addActionListener(this);
zengxuan.addActionListener(this);
yuxuan.addActionListener(this);
jiecheng.addActionListener(this);
dengyu.addActionListener(this);
t2.addActionListener(this);
t3.addActionListener(this);
t4.addActionListener(this);
t7.addActionListener(this);
t8.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==b0){
p1.setText("0");
j1.add(p1);
tem1 = 0;
}
else if(e.getSource() == b1){
p1.setText("1");
j1.add(p1);
tem1 = 1;
}
else if(e.getSource() == b2){
p1.setText("2");
j1.add(p1);
tem1 = 2;
}
else if(e.getSource() == b3){
p1.setText("3");
j1.add(p1);
tem1 = 3;
}
else if(e.getSource() == b4){
p1.setText("4");
j1.add(p1);
tem1 = 4;
}
else if(e.getSource() == b5){
p1.setText("5");
j1.add(p1);
tem1 = 5;
}
else if(e.getSource() == b6){
p1.setText("6");
j1.add(p1);
tem1 = 6;
}
else if(e.getSource() == b7){
p1.setText("7");
j1.add(p1);
tem1 = 7;
}
else if(e.getSource() == b8){
p1.setText("8");
j1.add(p1);
tem1 = 8;
}
else if(e.getSource() == b9){
p1.setText("9");
j1.add(p1);
tem1 = 9;
}
if(e.getSource()==jia){
p1.setText(tem1+"+");
j1.add(p1);
tem2 = tem1;
biaozhi = 0; }
if(e.getSource()==jian){
p1.setText(tem1+"-");
j1.add(p1);
tem2 = tem1;
biaozhi = 1;
}
if(e.getSource()==cheng){
p1.setText(tem1+"*");
j1.add(p1);
tem2 = tem1;
biaozhi = 2;
}
if(e.getSource()==chu){
p1.setText(tem1+"/");
j1.add(p1);
tem2 = tem1;
biaozhi = 3;
}
if(e.getSource()==kaigen){
p1.setText(tem1+"立方根");
j1.add(p1);
tem2 = tem1;
biaozhi = 4;
}
if(e.getSource()==qiuyu){
p1.setText(tem1+"平方根");
j1.add(p1);
tem2 = tem1;
biaozhi = 5;
}
if(e.getSource()==pingfang){
p1.setText(tem1+"平方");
j1.add(p1);
tem2 = tem1;
biaozhi = 6;
}
if(e.getSource()==zengxuan){
p1.setText(tem1+"sina");
j1.add(p1);
tem2 = tem1;
biaozhi = 7;
}
if(e.getSource()==yuxuan){
p1.setText(tem1+"cosa");
j1.add(p1);
tem2 = tem1;
biaozhi = 8;
}
if(e.getSource()==jiecheng){
p1.setText(tem1+"!");
j1.add(p1);
tem2 = tem1;
biaozhi = 9;
}
if(e.getSource()==dengyu){
if(biaozhi ==0){tem3 = tem2+tem1;}
if(biaozhi ==1){tem3 = tem2-tem1;}
if(biaozhi ==2){tem3 = tem2*tem1;}
if(biaozhi ==3){tem3 = tem2/tem1;}
if(biaozhi ==4){tem3 = Math.cbrt(tem1);}
if(biaozhi ==5){tem3 =Math.sqrt(tem1);}
if(biaozhi ==6){tem3 = tem1*tem1;}
if(biaozhi ==7){tem3 = Math.sin(tem1);}
if(biaozhi ==8){tem3 = Math.cos(tem1);}
if(biaozhi ==9){tem3 = jisuanjiecheng(tem1);}
p1.setText("="+tem3);
j1.add(p1);
}
else if(e.getSource()==t2){
p1.setText("0.0");
j1.add(p1);
}
else if(e.getSource()==t3){
p1.setText(Math.PI+"");
j1.add(p1);
}
else if(e.getSource()==t4){
System.exit(0);
}
else if(e.getSource()==t5){
repaint();
this.jiandanjisuan();
}
else if(e.getSource()==t8){
System.out.println("这是一个简单的GUI应用程序");
}
else if(e.getSource()==t7){
repaint();
new jishiben(contenPane);
}
}
private double jisuanjiecheng(double a){
if(a==1) return 1;
else return (jisuanjiecheng(a-1)*a);
}
public void jiandanjisuan(){
p1 = new JTextField(20);
p2 = new JTextField(20);
j0 = new JLabel("输入你要计算的数字");
j1 = new JPanel();
j1.add(j0);
j1.add(p1);
j1.add(p2);
j2 = new JPanel();
jia = new JButton("+");
jian = new JButton("-");
cheng = new JButton("*");
chu = new JButton("/");
j2.add(jia);
j2.add(jian);
j2.add(cheng);
j2.add(chu);
contenPane.add(j2,BorderLayout.CENTER);
contenPane.add(j1,BorderLayout.NORTH);
}
}
class jishiben extends jisuan {
private Container contenPane1 = getContentPane();
private JTextArea text = new JTextArea();
private JButton baobutton,tuibutton;
private JLabel l;
private JPanel ji1,ji2,ji3;
public jishiben(Container cont ){
this.contenPane1 = cont;
ji1 = new JPanel();
ji2 = new JPanel();
ji3 = new JPanel();
l = new JLabel("请输入你要记录的文字");
baobutton = new JButton("保存为");
tuibutton = new JButton("退出");
ji1.add(l);
ji2.add(text);
ji3.add(baobutton);
ji3.add(tuibutton);
contenPane1.add(ji2,BorderLayout.CENTER);
contenPane1.add(ji1,BorderLayout.NORTH);
contenPane1.add(ji3,BorderLayout.SOUTH);
}
}
java中sin怎么实现的啊
jdk 装好后会有个src.zip你解压可以看到源代码。
sin这些一般是用级数来做的。如果你学过高等数学就知道我在说什么了 你可以看看JNI(java native invocation)很多底层的东西是通过调用非java代码来实现的
求一个 JAVA 的 科学计算器 的 源代码最好里面有 sin cos 倒数、平方根、平方、立方高级一点的!
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator implements ActionListener
{
String s="",s1;
double d1,d2;
JFrame jf = new JFrame("小计算器by Graduate") ;
JTextField tf = new JTextField();
public void init()//实现计算器界面
{
Container c=jf.getContentPane();
tf.setHorizontalAlignment(JTextField.RIGHT);//文本框
c.add(tf,"North");
JPanel pn3 = new JPanel(new BorderLayout());
c.add(pn3,"Center");
JPanel pn2 = new JPanel();//功能键界面(清除键和关闭键)
pn2.setLayout(new BorderLayout());
JPanel pn1 = new JPanel();//运算界面
pn1.setLayout(new GridLayout(4,4));
pn3.add(pn2,"North");
pn3.add(pn1);
//设置按钮
JButton b = new JButton("CLEAR");
b.setToolTipText("请按清除键!");//设置清零键
b.setForeground(Color.RED);//设置字体颜色
b.setBackground(Color.YELLOW);//设置背景色
b.addActionListener(this);
pn2.add(b,"Center");
b = new JButton("OFF");
b.setToolTipText("请按退出键!");//设置off键,点击退出应用程序b.addActionListener(this);
b.setForeground(Color.RED);//字体颜色
b.setBackground(Color.ORANGE);//背景色
pn2.add(b,"East");
b = new JButton("1");//add butten 1
b.addActionListener(this);
pn1.add(b);
b = new JButton("2");//add butten 2
b.addActionListener(this);
pn1.add(b);
b = new JButton("3");//add butten 3
b.addActionListener(this);
pn1.add(b);
b = new JButton("+");//add butten +
b.setForeground(Color.BLUE);//设置字体颜色
b.addActionListener(this);
pn1.add(b);
b = new JButton("4");//add butten 4
b.addActionListener(this);
pn1.add(b);
b = new JButton("5");//add butten 5
b.addActionListener(this);
pn1.add(b);
b = new JButton("6");//add button 6
b.addActionListener(this);
pn1.add(b);
b = new JButton("-");//add button -
b.setForeground(Color.BLUE);//设置字体颜色
b.addActionListener(this);
pn1.add(b);
b = new JButton("7");//add button 7
b.addActionListener(this);
pn1.add(b);
b = new JButton("8");//add button 8
b.addActionListener(this);
pn1.add(b);
b = new JButton("9");//add button 9
b.addActionListener(this);
pn1.add(b);
b = new JButton("*");//add button *
b.setForeground(Color.BLUE);//设置字体颜色
b.addActionListener(this);
pn1.add(b);
b = new JButton("0");//add button 0
b.addActionListener(this);
pn1.add(b);
b = new JButton(".");//add button .
b.addActionListener(this);
pn1.add(b);
b = new JButton("=");//add button =
b.setForeground(Color.RED);//设置字体颜色
b.addActionListener(this);
pn1.add(b);
b = new JButton("\\");//add button \
b.setForeground(Color.BLUE);//设置字体颜色
b.addActionListener(this);
pn1.add(b);
jf.setSize(300,300);//设置大小
jf.setVisible(true);//设置为可视
}
//处理按钮按下时的动作,进行相应的处理
public void actionPerformed(ActionEvent e)
{
String command = e.getActionCommand();
tf.setText(tf.getText()+command);
if(command.equals("CLEAR")) //清零键 按下时返回初始状态
{
s1=null;
s="";
tf.setText("");//记录输入值的变量清空
}
else if(command.equals("OFF")) System.exit(0);//off键 关闭应用程序
else if(!command.equals("*")!command.equals("\\")
!command.equals("+")!command.equals("-")
!command.equals("="))//判断输入是否为数字
{
if(s1==null)//判断输入是否为第一个
s1 = command;
else s1+=command;
d1 = new Double(s1).doubleValue();//字符串型转换为双精度型,还原输入数字
try
{
if(s.equals("+")) d1 = d1+d2;//加法运算
else if(s.equals("-")) d1 = d2-d1;//减法运算
else if(s.equals("*")) d1 = d1*d2;//乘法运算
else if(s.equals("\\"))d1 = d2/d1;//除法运算
}
catch(Exception ex)
{
tf.setText("Error");//错误显示"Error"
System.out.println(ex.getMessage());
}
}
else if(!command.equals("=")) //判断输入是否为+ - * \
{
s = command;
s1 = null;
d2 = d1;
}
else//输入=时,显示运算结果
{
tf.setText(tf.getText()+d1);
}
}
public static void main(String [] args)
{
new Calculator().init();
}
}
用java算sin 30°怎么编啊
javajava计算器sin代码的Math类提供了各种常用计算方法java计算器sin代码,sin也是其中之一,所以你可以直接用Math.sin来计算正弦值。
代码如下java计算器sin代码:
import java.math.*;
public class sin
{
public static void main(String args[])
{
System.out.println(Math.sin(Math.PI*30/180));
}
}
需要注意java计算器sin代码的是,参数传入的是PI,所以要先用30除以180获得PI值
关于java计算器sin代码和javaswing计算器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。