2011-03-29 79 views
0
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
class math 
{ 
    JFrame jf; 
    JTextField jt; 
    JButton jb; 
    JButton jb1; 
    math() 
    { 
     jf=new JFrame("frame"); 
     jf.setSize(200,200); 
     jf.setVisible(true); 
     jt=new JTextField(50); 
     jf.setLayout(new FlowLayout()); 
     JButton jb=new JButton("30"); 
     JButton jb1=new JButton("sin"); 
     jb.addActionListener(new ActionListener() 
     { 
      public void actionPerformed(ActionEvent ae) 
      { 
       jt.setText("90"); 
      } 
     }); 
     jb1.addActionListener(new ActionListener() 
     { 
      public void actionPerformed(ActionEvent ae) 
      { 
       String s=jt.getText(); 
       float x=Float.parseFloat(s); 
       double s1=Math.sin(x); 
       String s2=String.valueOf(s1); 
       jt.setText(s2); 
      } 
     }); 
     JButton jb2=new JButton("cos"); 
     jf.add(jt); 
     jf.add(jb); 
     jf.add(jb1); 
     jf.add(jb2); 
    } 
    public static void main(String args[]) 
    { 
     new math(); 
    } 
} 
//output errors=sin(90)=0.89999 and sin(any angle) is coming incorrect 
+1

什么是您的具体问题?特定输入的预期输出是多少? – jzd 2011-03-29 17:10:56

+0

似乎你的问题是不是秋千相关?所以为什么不删除秋千相关的代码,人们会更乐意处理那些信息不太相关的问题:)。 – 2011-03-29 17:12:14

+0

属于[Snipplr](http://snipplr.com/)。 – 2011-03-29 17:12:37

回答

1

Math.sin()接受PI表示形式的角度。

用它来获得期望的结果

Math.sin(Math.PI/2.0); 
+0

的前一篇文章,我正在计算器在Java .so每次用户如何输入PI – desprado 2011-03-29 17:31:02

+1

将度数转换为弧度形式 – 2011-03-29 17:42:39