📄 jframekalkulator.java
字号:
//Action buat angka-angka
else if ((e.getSource()==jButtonNo0) || (e.getSource()==jButtonNo1) || (e.getSource()==jButtonNo2) || (e.getSource()==jButtonNo3) || (e.getSource()==jButtonNo4) || (e.getSource()==jButtonNo5) || (e.getSource()==jButtonNo6) || (e.getSource()==jButtonNo7) || (e.getSource()==jButtonNo8) ||(e.getSource()==jButtonNo9) )
{ if(pressed)
{
s="0";
pressed=false;
}
if(s.compareTo("0")==0)
s=e.getActionCommand();
else s=s+e.getActionCommand();
s3=s;
jTextHasil.setText(s);
}
//Action buat operasi-operasi matematika(type simple operasi aritmatika)
else if ((e.getSource()==jButtonTambah)||(e.getSource()==jButtonKurang)||(e.getSource()==jButtonkali)||(e.getSource()==jButtonBagi)||(e.getSource()==jButtonPangkat))
{
cond5=true;
op=e.getActionCommand();
s1=s;
s3=s;
s="0";
jTextHasil.setText(s);
}
else if ((e.getSource()==jButtonSamaDengan))
{
calculate();
}
else if (e.getSource()==jButtonAc)
{
jTextHasil.setText("0");
cond5=true;
s="0";
s1="";
s2="";
}
else if (e.getSource()==jButtonDel)
{
if (s.length()>1)
{
s=s.substring(0,s.length()-1);
jTextHasil.setText(s);
}
else
{
jTextHasil.setText("0");
s="0";
}
}
else if (e.getSource()==jButton1bagiX)
{
pressed=true;
float g=0,p=0;
p=Float.valueOf(s).floatValue();
if(p==0)
{
s="0";
jTextHasil.setText("Invinite");
}
else{
g=(1/p);
s=""+g;
s3=s;
jTextHasil.setText(s);
jTextCatatan.append("\n1 : "+ p +" = "+s+"\n-------------------"); /*
the conditions :
1:cond :kondisi untuk button advance
2:cond1 :kondisi untuk button Power
3:cond3 :kondisi untuk radio button radian or degrees
4:cond4 :kondisi untuk Button catatan
5:cond5 :kondisi untuk Button titik
*/
}
}
else if (e.getSource()==jButtonPlusMinus)
{
if (!(s.compareTo("0")==0))
{
if(s.charAt(0)=='-')
{
s=s.substring(1,s.length());
}
else
{
s="-"+s;
}
jTextHasil.setText(s);
}
}
else if(e.getSource()==jButtonSin)
{
pressed=true;
double x=Double.valueOf(s).doubleValue();
if (!cond3)
{
if(jRadioButton1.isSelected())
{
while(x>=360)
x=x-360;
s=""+M1ruMath.msinDeg(M1ruMath.invert(x));
jTextHasil.setText(""+s);
jTextCatatan.append("\nSIN "+ x +" = "+s+"\n-------------------");
}
else if(jRadioButton2.isSelected())
{
while(x>=(2*Math.PI))
x=x-Math.PI;
s=""+M1ruMath.msinDeg(x);
jTextHasil.setText(s);
jTextCatatan.append("\nSIN "+ x +" = "+s+"\n-------------------");
}
}
else
{
if(jRadioButton1.isSelected())
{
x=Double.valueOf(s).doubleValue();
s=""+M1ruMath.invertt(Math.asin(x));
jTextHasil.setText(""+s);
jTextCatatan.append("\narcSIN "+ x +" = "+s+"\n------------------");
}
else if(jRadioButton2.isSelected())
{
x=Double.valueOf(s).doubleValue();
s=""+M1ruMath.invertt(Math.acos(x));
jTextHasil.setText(s);
jTextCatatan.append("\narcSIN "+ x +" = "+s+"\n------------------");
}
s3=s;
}
}
else if(e.getSource()==jButtonCos)
{
pressed=true;
double x=Double.valueOf(s).doubleValue();
if (!cond3)
{
if(jRadioButton1.isSelected())
{
while (x>=360)
x=x-360;
s=""+M1ruMath.mcosDeg(M1ruMath.invert(x));
jTextHasil.setText(s);
s3=s;
jTextCatatan.append("\nCOS "+ x +" = "+s+"\n-------------------");
}
else if(jRadioButton2.isSelected())
{
while(x>=(2*Math.PI))
x=x-Math.PI;
s=""+M1ruMath.mcosDeg(x);
jTextHasil.setText(s);
s3=s;
jTextCatatan.append("\nCOS "+ x +" = "+s+"\n-------------------");
}
}
else
{
if(jRadioButton1.isSelected())
{
x=Double.valueOf(s).doubleValue();
s=""+M1ruMath.invertt(Math.acos(x));
jTextHasil.setText(s);
s3=s;
jTextCatatan.append("\narcCOS "+ x +" = "+s+"\n-------------------");
}
else if(jRadioButton2.isSelected())
{
x=Double.valueOf(s).doubleValue();
s=""+M1ruMath.invertt(Math.acos(x));
jTextHasil.setText(s);
s3=s;
jTextCatatan.append("\narcCOS "+ x +" = "+s+"\n-------------------");
}
}
}
else if(e.getSource()==jButtonTan)
{
pressed=true;
double x=Double.valueOf(s).doubleValue();
if (!cond3)
{
if(jRadioButton1.isSelected())
{
while(x>=360)
x=x-360;
s=""+M1ruMath.mtanDeg(M1ruMath.invert(x));
jTextHasil.setText(""+s);
jTextCatatan.append("\nTAN "+ x +" = "+s+"\n-------------------");
}
else if(jRadioButton2.isSelected())
{
while(x>=(2*Math.PI))
x=x-Math.PI;
s=""+M1ruMath.mtanDeg(x);
jTextHasil.setText(s);
jTextCatatan.append("\nTAN "+ x +" = "+s+"\n-------------------");
}
}
else
{
if(jRadioButton1.isSelected())
{
x=Double.valueOf(s).doubleValue();
s=""+M1ruMath.mctgDeg(M1ruMath.invert(x));
jTextHasil.setText(""+s);
jTextCatatan.append("\nCTG "+ x +" = "+s+"\n-------------------");
}
else if(jRadioButton2.isSelected())
{
x=Double.valueOf(s).doubleValue();
s=""+M1ruMath.invertt(M1ruMath.mctgDeg(x));
jTextHasil.setText(s);
jTextCatatan.append("\nCTG "+ x +" = "+s+"\n-------------------");
}
s3=s;
}
}
else if(e.getSource()==jButtonKuadrat)
{
pressed=true;
double y=0;
double x=Double.valueOf(s).doubleValue();
y=M1ruMath.pangkat2(x);
jTextHasil.setText(""+y);
s=""+y;
s3=s;
jTextCatatan.append("\nkuadrat "+ x +" = "+s+"\n-------------------");
}
else if(e.getSource()==jButtonAkar2)
{
pressed=true;
double l=0;
m=Double.valueOf(s).doubleValue();
l=Math.sqrt(m);
s=""+l;
s3=s;
jTextHasil.setText(s);
jTextCatatan.append("\nAkar Kuadrat "+ m +" = "+l+"\n-------------------");
}
else if(e.getSource()==jButtonFakrotial)
{
pressed=true;
int x=Integer.valueOf(s).intValue();
if(x>39)
jTextHasil.setText("Invinit");
else
{
s=""+M1ruMath.faktorial(x);
jTextHasil.setText(""+s);
jTextCatatan.append("\n"+x +"! = "+s+"\n-------------------");
s3=s;
}
}
else if(e.getSource()==jButtonShift)
{
if(!cond3)
{
jButtonSin.setLabel("arcSin");
jButtonCos.setLabel("arcCos");
jButtonTan.setLabel("Ctg");
cond3=true;
}
else
{
cond3=false;
jButtonSin.setLabel("SIN");
jButtonCos.setLabel("COS");
jButtonTan.setLabel("TAN");
}
}
else if(e.getSource()==jButtonPersen)
{
pressed=true;
float p,r;
p=Float.valueOf(s).floatValue();
r=p/100;
s=""+r;
s3=s;
jTextHasil.setText(s);
jTextCatatan.append("\n"+p +"% = "+s+"\n-------------------");
}
else if (e.getSource()==jButtonPhi)
{
pressed=true;
jTextHasil.setText(""+3.1415926);
s=""+3.1415926;
jTextCatatan.append("\nPHI "+ s +"\n-------------------");
}
}
class CloseWindowAndExit implements WindowListener
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
public void windowActivated(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowOpened(WindowEvent e){}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -