⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jsj29.java

📁 java复数的加减乘除
💻 JAVA
字号:
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class jsj29 extends Applet implements ActionListener
{
  final int NUMBER=4;
  ComplexNumber cNumber_1;
  ComplexNumber cNumber_2;
  ComplexNumber cResult;
  double d=0.0;
  

  TextField numComplexTfd[][],subComplexTfd[][];
Label resComplexbl[][];
Button caculateBtn[];
final String COMMAND_NAME[]=
 {"ADD","MINUS","MULTIPLE","DIVIDE"};


 public jsj29()
{
   numComplexTfd=new TextField[NUMBER][2];
   subComplexTfd=new TestField[NUMBER][2];
resComplexLbl=new Label[NUMBER][2];
caculateBtn=new Button[NUMBER];


for(int i=0;i<NUMBER;i++)
{
  for(int j=0;j<2;j++)
   {
      numComplexTfd[i][j]=new TextField(5);
      subComplexTfd[i][j]=new TextField(5);
      resComplexLbl[i][j]=new Label("  ");
  }
  caculateBtn[i]=new Button("=");
caculateBtn[i].addActionListener(this);
caculateBtn[i].setActionCommand(COMMAND_NAME[i]);
}

cNumber_1=new ComplexNumber(); 

cNumber_2=new ComplexNumber(); 

cResult=new ComplexNumber();

 for(int i=0;i<NUMBER;i++)
  {
   add(new Label("("));
   add(numComplexTfd[i][0]);
   add(new Label("+"));
   add(numComplexTfd[i][1]); 
   add(new Label("i)");
  
 switch(i)
   {
   case 0: add(new Label("+"));
    break;
   case 1: add(new Label("-"));
break;
  case 2: add(new Label("*"));
break;
   ase 3: add(new Label("/"));
break;
  }
 

   add(new Label("("));
   add(numComplexTfd[i][0]);
   add(new Label("+"));
   add(numComplexTfd[i][1]); 
   add(new Label("i)");
add(caculateBtn[i]);

add(new Label("("));
   add(numComplexLbl[i][0]);
   add(new Label("+"));
   add(numComplexLbl[i][1]); 
   add(new Label("i)");
  }
}


  public void init()
{

 resetTextField();
}

  public void actionPerformed(ActionEvent e)
   {
    int flag=0;
   

   try
    {
    if(e.getActionCommand().equals(COMMAND_NAME[0]))
       flag=0;
  else if(e.getActionCommand().equals(COMMAND_NAME[1])
    flag=1;
else if(e.getActionCommand().equals(COMMAND_NAME[2]))
  flag=2;
else if(e.getActionCommand().equals(COMMAND_NAME[3]))
 flag=3;
else
{
showStatus("未定义这种事件的处理操作"+e.toString());
return;
}
cNumber_1.setRealPart(
  Double.parseDouble(numComplexTfd[flag][0].getText()));
cNumber_1.setImaginaryPart(
  Double.parseDouble(numComplexTfd[flag][1].getText()));

if(subComplexTfd[flag][1].getText().equals(""))
{
 d=Double.parseDouble(subComplexTfd[flag][0].getText());
switch(flag)
{
case 0: cResult=cNumber_1.complexAdd(d);
break;
case 1: cResult=cNumber_1.complexMinus(d);
break;
case 2: cResult=cNumber_1.complexMulti(d);
break;
case 3: cResult=cNumber_1.complexDivide(d);
break;
}
}
else
{
cNumber_2.setRealPart(
  Double.parseDouble(subComplexTfd[flag][0].getText()));
cNumber_2.setImaginaryPart(
   Double.parseDouble(subComplexTfd[flag][1].getText()));
 switch(flag)
{
case 0:cResult=cNumber_1.complexAdd(cNumber_2);
break;
case 1:cResult=cNumber_1.complexMinus(cNumber_2);
break;
case 2:cResult=cNumber_1.complexMulti(cNumber_2);
break;
case 3:cResult=cNumber_1.complexDivide(cNumber_2);
break;
}
}

resComplexLbl[flag][0].setText(
 Double.toString(cResult.getRealPart()));
resComplexLbl[flag][1].setText(
 Double.toString(cResult.getImaginaryPart()));
}
catch(NumberFormatException nfe)
{
showStatus("输入的数据错误,请你重新输入。");
resetTextField();
}
}

void resetTextField()
{
for(int i=0;i<NUMBER;i++)
{
  for(int j=0;j<2;j++)
 { 
  numComplexTfd[i][j].setText("");
  subComplexTfd[i][j].setText("");
  resetComplexLbl[i][j].setText("   ");
}
}
}
}
class ComplexNumber
{
 private double m_dRealPart;
 private double m_dImaginPart;

 ComplexNumber()
{
  m_dRealPart=0.0;
 m_dImaginPart=0.0;

}
ComplexNumber(double r,double i)
{
m_dRealPart=r;
m_dImaginPart=i;
}
ComplexNumber(ComplexNumber c)
{
 m_dRealPart=c.getRealPart();
 m_dImaginPart=c.getImaginaryPart();
}
double getRealPart;
{
return m_dRealPart;
}
double getImaginaryPart()
{
return m_dImaginPart;
}

void setRealPart(double d)
{
 m_dRealPart=d;
}
void setImaginaryPart(double d)
{
m_dImaginPart=d;
}



ComplexNumber complexConjugate()
{
return new ComplexNumber(m_dRealPart,
  -1*m_dImaginPart);
}


ComplexNumber complexAdd(ComplexNumber c)
{
 return new ComplexNumber(this.m_dRealPart+c.getRealPart(),
 this.m_dImaginPart+c.getImaginaryPart());
}

ComplexNumber complexAdd(double c)
{
return new ComplexNumber(this.m_dRealPart +c, this.m_dImaginPart);
}





ComplexNumber complexMinus(ComplexNumber c)
{
 return new ComplexNumber(this.m_dRealPart - c.getRealPart(),
 this.m_dImaginPart - c.getImaginaryPart());
}

ComplexNumber complexMinus(double c)
{
return new ComplexNumber(this.m_dRealPart-c,this.m_dImaginPart);
}







public String toString()
{
 return"("+m_dRealPart+"+"+m_dImaginPart+"i"+")";
}
}





⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -