本文目錄一覽:
- 1、在java語言中多少表示y,多少表示n
- 2、用Java語言定義複數類Complex,必須滿足如下要求:
- 3、用JAVA定義個複數類
- 4、使用JAVA編程實現複數類ComplexNumber
- 5、在java中複數的結構包括實部和虛部?什麼是實部什麼是虛部?
- 6、java中怎樣表示一個無窮大?無窮小
在java語言中多少表示y,多少表示n
大寫的Y是89,大寫的N是78.
小寫的y是121,小寫的n是110.
記住小寫的a是97,大寫的A是65就可以,後面的字母依次類推。
用Java語言定義複數類Complex,必須滿足如下要求:
public class Complex{
public int RealPart;
public int ImaginPart;
public Complex(){
this.RealPart = 0;
this.ImaginPart = 0;
}
public Complex(int r, int i){
this.RealPart = r;
this.ImaginPart = i
}
public Complex complexAdd(Complex a){
this.RealPart += a.RealPart;
this.ImaginPart += a.ImaginPart;
//這裡返回什麼?複數值是指哪個?還是複數對象?沒有說清楚。我這裡返回複數對象。
return this;
}
public String ToString(){
return “”+this.RealPart + this.ImaginPart;//return “” + 1 + 2 = “12”;不知道這裡要求是不是這樣。有些話寫的我沒法理解。你的a + bi是個啥?如果是返回實數和虛數的和就給 1 + 2的部分加上括號。
}
}
用JAVA定義個複數類
public class Complex {
private double x;//實部
private double y;//虛部
public Complex(){}
/**構造函數
* @param x 實數部分
* @param y 虛數部分
*/
public Complex(double x,double y){
super();
this.x = x;
this.y = y;
}
/**求模
* @return 該複數的模
*/
public double mod(){
return x * x + y * y;
}
/**複數間加法
* @param complex 加數
* @return 計算結果
*/
public Complex add(Complex complex){
double x = this.x + complex.x;
double y = this.y + complex.y;
return new Complex(x,y);
}
/**複數與實數的加法
* @param a 加數
* @return 計算結果
*/
public Complex add(double a){
return this.add(new Complex(a,0));
}
/**複數間減法
* @param complex 減數
* @return 計算結果
*/
public Complex subtract(Complex complex){
double x = this.x – complex.x;
double y = this.y – complex.y;
return new Complex(x,y);
}
/**複數與實數的減法
* @param a 減數
* @return 計算結果
*/
public Complex subtract(double a){
return subtract(new Complex(a,0));
}
/**複數間乘法
* @param complex 乘數
* @return 計算結果
*/
public Complex multiply(Complex complex){
double x = this.x * complex.x – this.y * complex.y;
double y = this.y * complex.x + this.x * complex.y;
return new Complex(x,y);
}
/**複數間除法
* @param complex 除數
* @return 計算結果
*/
public Complex divide(Complex complex){
double x = (this.x * complex.x + this.y * complex.y) / (complex.mod());
double y = (this.y * complex.x – this.x * complex.y) / (complex.mod());
return new Complex(x,y);
}
public String toString(){
StringBuffer sb = new StringBuffer();
if(x != 0){
sb.append(x);
if(y 0){
sb.append(“+” + y + “i”);
}else if(y 0){
sb.append(y + “i”);
}
}else{
if(y != 0){
sb.append(y + “i”);
}
}
if(x == 0 y == 0){
return “0”;
}
return sb.toString();
}
public double getX() {
return x;
}
public void setX(double x) {
this.x = x;
}
public double getY() {
return y;
}
public void setY(double y) {
this.y = y;
}
public static void main(String[] args) {
Complex a = new Complex(2,0.5);
Complex b = new Complex(0.5,2);
System.out.println(“(” + a + “)+(” + b + “)=” + a.add(b));
System.out.println(“(” + a + “)+” + 2 + “=” + a.add(2));
System.out.println(“(” + a + “)-(” + b + “)=” + a.subtract(b));
System.out.println(“(” + a + “)-” + 2 + “=” + a.subtract(2));
System.out.println(“(” + a + “)*(” + b + “)=” + a.multiply(b));
System.out.println(“(” + a + “)/(” + b + “)=” + a.divide(b));
}
}
使用JAVA編程實現複數類ComplexNumber
import java.applet.Applet;
import java.awt.Button;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class ComplexTest extends Applet implements ActionListener{
Label firstReal, firstImg;
TextField firstRealNum, firstImgNum;
Label secondReal, secondImg;
TextField secondRealNum, secondImgNum;
Button add = new Button(“Add”);
Button subtract = new Button(“Subtract”);
TextField addResult, subtractResult;
public void init(){
firstReal = new Label(“First Complex Real Number: “);
firstRealNum = new TextField(7);
super.add(firstReal);
super.add(firstRealNum);
firstImg = new Label(“First Complex Imaginary Number: “);
firstImgNum = new TextField(7);
super.add(firstImg);
super.add(firstImgNum);
secondReal = new Label(“Second Complex Real Number: “);
secondRealNum = new TextField(7);
super.add(secondReal);
super.add(secondRealNum);
secondImg = new Label(“Second Complex Imaginary Number: “);
secondImgNum = new TextField(7);
super.add(secondImg);
super.add(secondImgNum);
super.add(add);
addResult = new TextField(7);
super.add(addResult);
super.add(subtract);
subtractResult = new TextField(7);
super.add(subtractResult);
add.addActionListener(this);
subtract.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
double firstComplxReal = Double.parseDouble(firstRealNum.getText());
double firstComplxImg = Double.parseDouble(firstImgNum.getText());
double secondComplxReal = Double.parseDouble(secondRealNum.getText());
double secondComplxImg = Double.parseDouble(secondImgNum.getText());
ComplexNumber complxNum1 = new ComplexNumber(firstComplxReal, firstComplxImg);
ComplexNumber complxNum2 = new ComplexNumber(secondComplxReal, secondComplxImg);
addResult.setText(complxNum1.add(complxNum2).toString());
subtractResult.setText(complxNum1.subtract(complxNum2).toString());
}
}
class ComplexNumber{
private double real;
private double imaginary;
public ComplexNumber(double realNum, double imaginaryNum){
this.real = realNum;
this.imaginary = imaginaryNum;
}
// (a+bi) + (c+di) = (a+b) + (c+d)i
public ComplexNumber add(ComplexNumber complexNum2){
double newRealPart = this.real + complexNum2.getReal();
double newImgPart = this.imaginary + complexNum2.getImaginary();
return new ComplexNumber(newRealPart, newImgPart);
}
//(a+bi) – (c+di) = (a-b) – (c-d)i
public ComplexNumber subtract(ComplexNumber complexNum2){
double newRealPart = this.real – complexNum2.getReal();
double newImgPart = this.imaginary – complexNum2.getImaginary();
return new ComplexNumber(newRealPart, newImgPart);
}
public double getImaginary() {
return imaginary;
}
public void setImaginary(double imaginary) {
this.imaginary = imaginary;
}
public double getReal() {
return real;
}
public void setReal(double real) {
this.real = real;
}
public String toString(){
return real + “+” + imaginary + “i”;
}
}
在java中複數的結構包括實部和虛部?什麼是實部什麼是虛部?
複數是形如
a+bi
的數,
其中
a,
b
是實數,a稱為實部,b稱為虛部,i是虛數單位,
i^2
=
-1.
實數可以用一條直線(數軸)上的點表示,
類似地,
複數可以用一個平面(稱為複平面)上的點表示.
在複平面上,a+bi
用點Z(a,b)
表示。Z與原點的距離r稱為Z的模|Z|=√(a^2+b^2)
複數a+bi,b=0為實數,b不等於0為虛數,
a=0且b不等於0時為純虛數。
複數的三角形式是
Z=r(cosx+isinx)
中x,r是實數,rcosx稱為實部,rsinx稱為虛部,i是虛數單位。Z與原點的距離r稱為Z的模,x稱為輻角。
java中怎樣表示一個無窮大?無窮小
Java中提供了三個特殊的浮點數值:正無窮大、負無窮大、非數,用於表示溢出和出錯。
正無窮大:用一個正數除以0將得到一個正無窮大,通過Double或Float的POSITIVE_INFINITY表示。
負無窮大:用一個負數除以0將得到一個負無窮大,通過Double或Float的NEGATIVE_INFINITY表示。
非數:0.0除以0.0或對一個負數開放將得到一個非數,通過Double或Float的NaN表示。
所有的正無窮大的數值都是相等的,所有的負無窮大的數值都是相等;而NaN不與任何數值相等,甚至和NaN都不等。
public class javaLesson5
{
public static void main(String[] args)
{
float af = 5.2325556f;
//下面將看到af的值已經發生改變,顯示結果為5.2325554.
System.out.println(af);
double a = 0.0;
double c = Double.NEGATIVE_INFINITY;
float d = Float.NEGATIVE_INFINITY;
//將看到float和double的負無窮大是相等的。顯示結果為:true。
System.out.println(c == d);
//0.0除以0.0將出現非數。顯示結果為:NaN。
System.out.println(a / a);
//兩個非數之間是不相等的。顯示結果為:false。
System.out.println(a == Float.NaN);
//所有正無窮大都是相等的。顯示結果為:true。
System.out.println(6.0 / 0 == 555.0/0);
//負數除以0.0將得到負無窮大。顯示結果為:-Infinity
System.out.println(-8 / a);
//下面代碼將拋出除以0的異常。
//System.out.pintln(0 / 0);
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/200761.html