asp.net(c#)复数类(复数加减乘除四则运算)
程序员文章站
2023-11-01 18:22:10
我的一个java作业,把它改写成asp.net(c#)了复制代码 代码如下:protected void page_load(object s...
我的一个java作业,把它改写成asp.net(c#)了
protected void page_load(object sender, eventargs e)
{
complex complex_a = new complex(1.0, 1.0);
complex complex_b = new complex(2.0, 2.0);
response.write("加法运算结果:" + complex_a.complex_add(complex_b).tostring() + "<br />");
response.write("减法运算结果:" + complex_a.complex_minus(complex_b).tostring() + "<br />");
response.write("乘法运算结果:" + complex_a.complex_multi(complex_b).tostring() + "<br />");
response.write("除法运算结果:" + complex_a.complex_divide(complex_b).tostring());
}
//design by 阿会楠 来自:搜索吧 sosuo8.com
public class complex
{
//复数中的实部
private double complex_real;
//复数中的虚部
private double complex_imagin;
//构造函数
public complex(double r, double i)
{
complex_real = r;
complex_imagin = i;
}
//重写tostring()方法
public override string tostring()
{
return this.complex_real + "+" + this.complex_imagin + "i";
}
//复数加法运算
public complex complex_add(complex c)
{
//取得加法运算后的实部
double complex_real = this.complex_real + c.complex_real;
//取得加法运算后的虚部
double complex_imagin = this.complex_imagin + c.complex_imagin;
//返回一个复数类
return new complex(complex_real,complex_imagin);
}
//复数减法运算
public complex complex_minus(complex c)
{
//取得减法运算后的实部
double complex_real = this.complex_real - c.complex_real;
//取得减法运算后的虚部
double complex_imagin = this.complex_imagin - c.complex_imagin;
//返回一个复数类
return new complex(complex_real, complex_imagin);
}
//乘法运算
public complex complex_multi(complex c)
{
//取得乘法运算后的实部
double complex_real = this.complex_real * c.complex_real - this.complex_imagin * c.complex_imagin;
//取得乘法运算后的虚部
double complex_imagin = this.complex_real * c.complex_imagin + this.complex_imagin * c.complex_real;
//返回一个复数类
return new complex(complex_real, complex_imagin);
}
//除法运算结果 (a+bi)/(c+di)=(a+bi)(c-di)/(c+di)(c-di)
public complex complex_divide(complex c)
{
//取得(c+di)(c-di)的值
double d = c.complex_real * c.complex_real + c.complex_imagin * c.complex_imagin;
//取得除法运算后的实部
double complex_real = (this.complex_real * c.complex_real + this.complex_imagin * c.complex_imagin) / d;
//取得除法运算后的虚部
double complex_imagin = (this.complex_real * (-c.complex_imagin) + this.complex_imagin * c.complex_real) / d;
//返回一个复数类
return new complex(complex_real, complex_imagin);
}
}
运行结果:
加法运算结果:3+3i
减法运算结果:-1+-1i
乘法运算结果:0+4i
除法运算结果:0.5+0i
复制代码 代码如下:
protected void page_load(object sender, eventargs e)
{
complex complex_a = new complex(1.0, 1.0);
complex complex_b = new complex(2.0, 2.0);
response.write("加法运算结果:" + complex_a.complex_add(complex_b).tostring() + "<br />");
response.write("减法运算结果:" + complex_a.complex_minus(complex_b).tostring() + "<br />");
response.write("乘法运算结果:" + complex_a.complex_multi(complex_b).tostring() + "<br />");
response.write("除法运算结果:" + complex_a.complex_divide(complex_b).tostring());
}
//design by 阿会楠 来自:搜索吧 sosuo8.com
public class complex
{
//复数中的实部
private double complex_real;
//复数中的虚部
private double complex_imagin;
//构造函数
public complex(double r, double i)
{
complex_real = r;
complex_imagin = i;
}
//重写tostring()方法
public override string tostring()
{
return this.complex_real + "+" + this.complex_imagin + "i";
}
//复数加法运算
public complex complex_add(complex c)
{
//取得加法运算后的实部
double complex_real = this.complex_real + c.complex_real;
//取得加法运算后的虚部
double complex_imagin = this.complex_imagin + c.complex_imagin;
//返回一个复数类
return new complex(complex_real,complex_imagin);
}
//复数减法运算
public complex complex_minus(complex c)
{
//取得减法运算后的实部
double complex_real = this.complex_real - c.complex_real;
//取得减法运算后的虚部
double complex_imagin = this.complex_imagin - c.complex_imagin;
//返回一个复数类
return new complex(complex_real, complex_imagin);
}
//乘法运算
public complex complex_multi(complex c)
{
//取得乘法运算后的实部
double complex_real = this.complex_real * c.complex_real - this.complex_imagin * c.complex_imagin;
//取得乘法运算后的虚部
double complex_imagin = this.complex_real * c.complex_imagin + this.complex_imagin * c.complex_real;
//返回一个复数类
return new complex(complex_real, complex_imagin);
}
//除法运算结果 (a+bi)/(c+di)=(a+bi)(c-di)/(c+di)(c-di)
public complex complex_divide(complex c)
{
//取得(c+di)(c-di)的值
double d = c.complex_real * c.complex_real + c.complex_imagin * c.complex_imagin;
//取得除法运算后的实部
double complex_real = (this.complex_real * c.complex_real + this.complex_imagin * c.complex_imagin) / d;
//取得除法运算后的虚部
double complex_imagin = (this.complex_real * (-c.complex_imagin) + this.complex_imagin * c.complex_real) / d;
//返回一个复数类
return new complex(complex_real, complex_imagin);
}
}
运行结果:
复制代码 代码如下:
加法运算结果:3+3i
减法运算结果:-1+-1i
乘法运算结果:0+4i
除法运算结果:0.5+0i
上一篇: 大数据时代财会行业如何化挑战为机遇?