/***
* 複數類2
*/public class complexnumber2 implements cloneable
/*** 建構函式
* @param a 實部
* @param b 虛部
*/public complexnumber2(double a,double b)
/*** 複數的加法運算
* c = a + b的運算法則是:
* c.實部 = a.實部 + b.實部;c.虛部 = a.虛部 + b.虛部
* @param acomnum 加數
* @return 加法運算的結果,為乙個複數對數
*/public complexnumber2 add(complexnumber2 acomnum)
return new complexnumber2(this.realpart + acomnum.getrealpart(),this.imaginarypart + acomnum.getimaginarypart());
}/**
* 複數的減法運算
* c = a - b的運算法則是:
* c.實部 = a.實部 - b.實部;c.虛部 = a.虛部 - b.虛部
* @param acomnum 減數
* @return 減法運算的結果,為乙個複數物件
*/public complexnumber2 decrease(complexnumber2 acomnum)
return new complexnumber2(this.realpart - acomnum.getrealpart(),this.imaginarypart - acomnum.getimaginarypart());
}/**
* 複數的乘法運算
* c = a * b的運算法則是:
* c.實部 = a.實部 * b.實部 - a.虛部 * b.虛部;
* c.虛部 = a.虛部 * b.實部 + a.實部 * b.虛部;
* @param acomnum 乘數
* @return 乘法運算的結果,為乙個複數物件
*/public complexnumber2 multiply(complexnumber2 acomnum)
double newreal = this.realpart * acomnum.realpart - this.imaginarypart * acomnum.imaginarypart;
double newimaginary = this.realpart * acomnum.imaginarypart + this.imaginarypart * acomnum.realpart;
complexnumber2 result = new complexnumber2(newreal,newimaginary);
return result;
}/**
* 複數的除法運算
* c = a / b 的運算法則是:
* c.實部 = (a.實部 * b.實部 + a.虛部 * b.虛部)/(b.實部 * b.實部 + b.虛部 * b.虛部);
* c.虛部 = (a.虛部 * b.實部 - a.實部 * b.虛部)/(b.實部 * b.虛部 + b.虛部 * b.虛部);
* @param acomnum 除數
* @return 除法運算的結果,為乙個複數物件
*/public complexnumber2 divide(complexnumber2 acomnum)
if(acomnum.getrealpart() == 0 && acomnum.getimaginarypart() == 0)
double temp = acomnum.getrealpart() * acomnum.getrealpart() +
acomnum.getimaginarypart() * acomnum.getimaginarypart();
double crealpart = (this.realpart * acomnum.getrealpart()+
this.imaginarypart * acomnum.getimaginarypart())/temp;
double cimaginarypart = (this.imaginarypart * acomnum.getrealpart() -
this.realpart * acomnum.getimaginarypart())/temp;
return new complexnumber2(crealpart,cimaginarypart);
}public string tostring()
/*** 比較乙個物件是否和這個複數物件的值相等
*/public boolean equals(object obj)
/** 首先判斷a是不是乙個複數物件
* instanceof關鍵字用來判斷物件的型別
*/if(obj instanceof complexnumber2)
else
}else
}/**
* 獲得該複數物件的hashcode
*/public int hashcode()
/*** 根據現有物件轉殖乙個新物件,新物件和現有物件的值一樣
*/public object clone()
catch (clonenotsupportedexception e)
}public static void main(string args)
public double getrealpart()
public void setrealpart(double realpart)
public double getimaginarypart()
public void setimaginarypart(double imaginarypart)
}
java計算複數 一
複數類 public class complexnumber 建構函式 param a 實部 param b 虛部 public complexnumber double a,double b 複數的加法運算 c a b的運算法則是 c.實部 a.實部 b.實部 c.虛部 a.虛部 b.虛部 par...
複數計算器
複數的加減乘法,和普通的加減乘法有乙個區別在於,複數有實部和虛部,雖然進行運算的時候差不多,只需要實部和實部操作,虛部和虛部操作,但是顯示的時候就需要考慮到好幾種情況了。具體地說有四種情況,1.實部和虛部為0。2.實部等於0,虛部不等於0。3實部不等於0,虛部等於0.4.實部和虛部都不等於0.如下 ...
藍橋杯 複數計算
程式設計實現兩個複數的運算。設有兩個複數 和 則他們的運算公式為 要求 1 定義乙個結構體型別來描述複數。2 複數之間的加法 減法 乘法和除法分別用不用的函式來實現。3 必須使用結構體指標的方法把函式的計算結果返回。說明 使用者輸入 運算符號 a b c d.輸出 a bi,輸出時不管a,b是小於0...