精华内容
下载资源
问答
  • C++大学教程第五版第十一章课后作业复数运算和指数运算
  • 易语言复数运算模块源码,复数运算模块,复数加,复数减,复数乘,复数除,复数乘幂,复数次方根,复数指数,复数对数,复数正弦,复数余弦
  • 模拟复数及其运算

    千次阅读 2012-11-26 15:48:53
    数集拓展到实数范围内,仍有些运算无法进行。比如判别式小于0的一元二次方程仍无解,因此将数集再次扩充,达到复数范围。 形如z=a+bi的数称为复数(complex number),其中规定i为虚数单位,且i^2=i×i=-1(a,b是...


    复数

    数集拓展到实数范围内,仍有些运算无法进行。比如判别式小于0的一元二次方程仍无解,因此将数集再次扩充,达到复数范围。

    形如z=a+bi的数称为复数(complex number),其中规定i为虚数单位,且i^2=i×i=1ab是任意实数)。我们将复数z=a+bi中的实数a称为复数z的实部(real part)记作Rez=a,实数b称为复数z虚部imaginary part)记作 Imz=b

    已知:当b=0时,z=a,这时复数成为实数  当a=0b0时,z=bi,我们就将其称为纯虚数

    共轭复数

    对于复数z=a+bi,称复数z'=a-biz的共轭复数。即两个实部相等,虚部(虚部不等于0)互为相反数的复数互为共轭复数(conjugate complex number)。复数z的共轭复数记作z。表示方法为在字母z上方加一横线即共轭符号。

    复数的运算

    加法

    z1=a1+b1i, z2=a2+b2i

    z1+z2 = (a1+b1i)+(a2+b2i) = (a1+a2)+(b1+b2)i

    乘法

    z1=a1+b1i, z2=a2+b2i

    z1*z2=(a1+b1i)*(a2+b2i)

    = (a1a2-b1b2)+(a1b2+a2b1)i

    除法

    z1=a1+b1i, z2=a2+b2i

    z1/z2 = [(a1a2 + b1b1) + (a2b1-a1b2)i]/(a2a2 + b2b2)


    复数的模

    将复数的实部与虚部的平方和的正的平方根的值称为该复数的模,记作z.  即对于复数z=a+bi,它的模  z=a^2+b^2)

    棣莫佛定理

    对于复数z=r(cosθ+isinθ),有zn次幂

    z^n=(r^n)*[cos(nθ+isin(nθ] (其中n正整数

    开方法则

     若z^n=r(cosθ+isinθ),则

     z=nr[cos(2kπ+θ/n+isin(2kπ+θ/n]k=0,1,2,3……n-1)


    模拟复数及其运算的源码实现


    package cn.edu.jxau.image;
    
    /**
     * 用y = a+bi;模拟复数
     * @author luoweifu
     *
     */
    class Complex {
    	private double a;
    	private double b;
    	
    	public Complex(double a, double b) {
    		this.a = a;
    		this.b = b;
    	}
    	
    	public double getA() {
    		return a;
    	}
    
    	public double getB() {
    		return b;
    	}
    
    	/**
    	 * 求一个复数和一个实型数据的和;
    	 * @param a 实数
    	 * @return 结果(复数)
    	 */
    	public Complex add(double a) {
    		this.a = this.a + a;
    		return this;
    	}
    	/**
    	 * 用于求解两复数的和
    	 * z1=a1+b1i, z2=a2+b2i
    	 * z1+z2 = (a1+a2) + (b1+b2)i
    	 * @param c
    	 * @return
    	 */
    	public Complex add(Complex c) {
    		a = a + c.getA();
    		b = b + c.getB();
    		return this;
    	}
    	/**
    	 * 用于求一个复数和一个实型数据的差;
    	 * @param x
    	 * @return
    	 */
    	public Complex minus(double x) {
    		a = a-x;
    		return this;
    	}
    	/**
    	 * 用于求解两复数的差
    	 * @param c
    	 * @return
    	 */
    	public Complex minus(Complex c) {
    		a = a - c.getA();
    		b = b - c.getB();
    		return this;
    	}
    	/**
    	 * 用于求一个复数和一个实型数据的积;
    	 * @param r
    	 * @return
    	 */
    	public Complex multiply(double r) {
    		a = a* r;
    		b = b*r;
    		return this;
    	}
    	/**
    	 * 复数的乘法
    	 * z1=a1+b1i, z2=a2+b2i
    	 * z1*z2 = (a1+b1i)*(a2+b2i)= (a1a2-b1b2) + (a1b2+a2b1)i
    	 * @param c
    	 * @return
    	 */
    	public Complex multiply(Complex c) {
    		double a1 = this.a, b1 = this.b;
    		double a2 = c.getA(), b2 = c.getB();
    		a = a1*a2 - b1*b2;
    		b = a1*b2+a2*b1;
    		return this;
    	}
    	/**
    	 * 复数的除法
    	 * z1=a1+b1i, z2=a2+b2i
    	 * z1/z2 = [(a1a2 + b1b1) + (a2b1-a1b2)i]/(a2a2 + b2b2)
    	 * @param c
    	 * @return
    	 */
    	public Complex division(Complex c) {
    		double a1 = this.a, b1 = this.b;
    		double a2 = c.getA(), b2 = c.getB();
    		a = (a1*a2 + b1*b2)/(a2*a2 + b2*b2);
    		b = (a2*b1 - a1*b2)/(a2*a2 + b2*b2);
    		return this;
    	}
    	
    	@Override
    	public String toString() {
    		if(b>=0) {
    			return a + "+" + b + "i";
    		} else {
    			return a + "" + b + "i";
    		}		
    	}
    	/**
    	 * 求复数的模
    	 * @return
    	 */
    	public double model() {
    		return Math.sqrt(a*a + b*b);
    	}
    	/**
    	 * 复数的n次幂
    	 * @param n
    	 * @return
    	 */
    	public Complex pow(int n) {
    		double r = model();
    		double o = Math.atan2(b, a);
    		a = Math.pow(r, n)*Math.cos(n*o);
    		b = Math.pow(r, n)*Math.sin(n*o);
    		return this;
    	}
    	/*
    	public double sqrt(int n) {
    		double r = model();
    		double o = Math.atan2(b, a);		
    		//Math.
    		return 0;
    	}
    	*/
    	/*public static void main(String[] args) {
    		Complex c1 = new Complex(5, 3);
    		Complex c2 = new Complex(1, 2);
    		
    		c1.add(4);
    		System.out.println("复数(5+3i)与实数4的和为:"+c1);
    		
    		c1.add(c2);
    		System.out.println("复数(5+3i)与复数(1+2i)的和为:"+c1);
    		
    		c1.minus(4);
    		System.out.println("复数(5+3i)与实数4的差为:"+c1);	
    		
    		c1.minus(c2);	
    		System.out.println("复数(5+3i)与复数(1+2i)的差为:"+c1);
    		
    		c1.multiply(7);
    		System.out.println("复数(5+3i)与实数7的积为:"+c1);		
    		
    		c1.multiply(c2);
    		System.out.println("复数(5+3i)与复数(1+2i)的积为:"+c1);
    		
    		c1.division(c2);
    		System.out.println("复数(5+3i)与复数(1+2i)的商为:"+c1);
    		//System.out.println(Math.pow(81, 0.25));
    	}*/
    	
    }


    复数的几何表示法

     几何形式  

    复数z=a+bi 被复平面上的点 za)唯一确定。这种形式使复数的问题可以借助图形来研究。也可反过来用复数的理论解决一些几何问题。 

     向量形式。复数z=a+bi用一个以原点O为起点,点Zab)为终点的向量OZ表示。这种形式使复数四则运算得到恰当的几何解释。 

     三角形式。复数z=a+bi化为三角形式 

     z=rcosθ+isinθ)  式中r= a^2+b^2),是复数的模(即绝对值) 

     θ 是以x轴为始边,射线OZ为终边的角,叫做复数的辐角,辐角的主值记作arg(z)  这种形式便于作复数的乘、除、乘方、开方运算。

      指数形式。将复数的三角形式z=r( cosθ+isinθ)中的cosθ+isinθ换为 exp(iθ),复数就表为指数形式z=rexp(iθ

    展开全文
  • 复数运算(对数,指数,正弦)

    千次阅读 2017-07-25 18:05:00
    //复对数运算 public class fushu2 { static void cLog(double a,double b,double[] e,double[] f){ double temp; temp=Math.log(Math.sqrt(a*a+b*b)); e[0]=temp;...//复指数运算e的(a+bi)次幂 public sta
    //复对数运算
    public class fushu2 {
    static void cLog(double a,double b,double[] e,double[]f){
    double temp;
    temp=Math.log(Math.sqrt(a*a+b*b));
    e[0]=temp;
    f[0]=Math.atan2(b,a);
    }
    //复指数运算e的(a+bi)次幂
    public static void mi(double a,double b,double[] e,double[]f){
    double temp;
    temp = (double)Math.exp(a);
    e[0]=temp*(double)Math.cos(b);
    f[0]=temp*(double)Math.sin(a);
    }
    //复正弦运算
    public static void sin(double a,double b,double[] e,double[]f){
    double q,p;
    p=Math.exp(b);
    q=1/p;
    e[0]=Math.sin(a)*(q+p)/2.0;
    f[0]=Math.cos(a)*(p-q)/2.0;
    }
    
    public static void main(String[] args) {
    double a,b;
    double[] e={0},f={0};
    a=2.0;b=3.0;
    cLog(a,b,e,f);
    System.out.println(e[0]+"+"+f[0]);
    mi(a,b,e,f);
    System.out.println(e[0]+"+"+f[0]);
    sin(a,b,e,f);
    System.out.println(e[0]+"+"+f[0]); }
    }
    


    展开全文
  • 复数及其运算A)复数的表示(1).x=a+bi,其中a称为实部,b称为虚部(2)或写成复指数的形式:x=re^(iθ)其中r称为复数的模,又记为 |x| ;θ称为复数的幅度,又记为Arg(x)。且满足r=√(a^2+b^2) ,tanθ=b/a第一种方式适合...

    复数及其运算

    A)复数的表示

    (1).x=a+bi,其中a称为实部,b称为虚部

    (2)或写成复指数的形式:x=re^(iθ)其中r称为复数的模,又记为 |x| ;θ称为复数的幅度,又记为Arg(x)

    。且满足r=√(a^2+b^2)  ,tanθ=b/a

    第一种方式适合处理复数的代数运算,第二种方式适合处理复数旋转等涉及幅角改变的问题

    复数的构造:

    (1)直接构造法

    将复数看做完整的表达式输入

    例:

    x1=-1+i%实部虚部形式

    x2=sqrt(2)*exp(i*(3*pi/4))%复指数形式

    (2)符号函数构造法

    将复数看做函数形式,将实部和虚部看做自变量,用syms来构造,用subs对符号函数中的自变量赋值

    例:

    syms a b real%声明a

    b为实数型

    x3=a+b*i%实部虚部形式复数的符号表达

    subs(x3,{a,b},{-1,1})%代入具体值

    syms r ct real;%声明r

    ct为实数型

    x4=r*exp(ct*i);%复指数形式复数的符号表达

    subs(x4,{r,ct},{sqrt(2),3*pi/4})%代入具体值

    以上例子中复数均为 -1+1i

    复数矩阵的构造:

    (1)由复数元素构造

    例:

    a1=[sqrt(2)*exp((pi/4)*i) 1+2i 1+3i;sqrt(2)*exp((-pi/4)*i) 1-2i

    1-3i]

    (2)由实矩阵构造

    例:

    a2re=[1 1 1;1 1

    1];%实部实矩阵

    a2im=[1 2 3;-1 -2

    -3];%虚部实矩阵

    a2=a2re+a2im*i%由实矩阵构造

    以上两例中的复数矩阵均为

    1.0000 + 1.0000i

    1.0000 + 2.0000i

    1.0000 + 3.0000i

    1.0000 - 1.0000i

    1.0000 -

    2.0000i  1.0000 - 3.0000i

    B)复数的绘图

    (1)直角坐标图

    plot函数

    (2)极坐标图

    Polar函数

    调用格式:polar(theta,rho)其中theta为极坐标极值,rho为极坐标矢径

    例:做出y=t+i*rsin(t)

    的坐标图

    t=0:0.01:2*pi;

    y=t+i*t.*sin(t);

    %直角坐标表示

    r=abs(y);

    delta=angle(y);%极坐标表示

    subplot(2,1,1)

    plot(y)%绘制直角坐标图

    title('直角坐标图');

    subplot(2,1,2)

    polar(delta,r)%绘制极坐标图

    title('极坐标图')

    a4c26d1e5885305701be709a3d33442f.png

    C)复数的操作函数

    常用矩阵分解函数

    a4c26d1e5885305701be709a3d33442f.png转自博客:

    展开全文
  • 复数运算

    2019-01-24 18:48:00
    复数运算 复数是形如 a + b i的数。式中a,b 为 实数,i是一个满足i^2 =-1的数,因为任何实数的平方不等于-1,所以i不是实数,而是实数以外的新的数。 在复数a+bi中,a称为复数的实部,b称为...

    复数是形如 a + b i的数。式中a,b 为 实数,i是一个满足i^2 =-1的数,因为任何实数的平方不等于-1,所以i不是实数,而是实数以外的新的数。

    在复数a+bi中,a称为复数的实部,b称为复数的虚部,i称为虚数单位。当虚部等于零时,这个复数就是实数;当虚部不等于零时,这个复数称为虚数,虚数的实部如果等于零,则称为纯虚数。由上可知,复数集包含了实数集,因而是实数集的扩张。复数有多种表示形式,常用形式 z = a + b i叫做代数式。此外有下列形式。

    ①几何形式。复数 z = a + b i 用直角坐标平面上点 Z ( a , b )表示。这种形式使复数的问题可以借助图形来研究。也可反过来用复数的理论解决一些几何问题。

    ②向量形式。复数 z = a + b i用一个以原点 O 为起点,点 Z ( a , b )为终点的向量 O Z 表示。这种形式使复数的加、减法运算得到恰当的几何解释。

    ③三角形式。复数 z= a + b i化为三角形式

    z =| z |(cos θ +isin θ ) 式中| z |= ,叫做复数的模(或绝对值); θ 是以 x 轴为始边;向量 O Z 为终边的角,叫做复数的辐角。这种形式便于作复数的乘、除、乘方、开方运算。

    ④指数形式。将复数的三角形式 z =| z |(cos θ +isin θ )中的cos θ +isin θ 换为 e i q ,复数就表为指数形式

    z =| z | e i q , 复数的乘、除、乘方、开方可以按照幂的运算法则进行。

    复数集不同于实数集的几个特点是:开方运算永远可行;一元 n 次复系数方程总有 n 个根(重根按重数计);复数不能建立大小顺序。

     

     

     

    向左转|向右转

     

    扩展资料:

    根据定义,若 

    向左转|向右转

     (a,b∈R),则 

    向左转|向右转

     =a-bi(a,b∈R)。共轭复数所对应的点关于实轴对称。两个复数:x+yi与x-yi称为共轭复数,它们的实部相等,虚部互为相反数。

     

    在复平面上,表示两个共轭复数的点关于X轴对称,而这一点正是"共轭"一词的来源----两头牛平行地拉一部犁,它们的肩膀上要共架一个横梁,这横梁就叫做"轭"。如果用z表示x+yi,那么在z字上面加个"一"就表示x-yi,或相反。

    1 加法法则

    复数的加法法则:设z1=a+bi,z2=c+di是任意两个复数。两者和的实部是原来两个复数实部的和,它的虚部是原来两个虚部的和。两个复数的和依然是复数。

    即 

    向左转|向右转

     

    2 乘法法则

    复数的乘法法则:把两个复数相乘,类似两个多项式相乘,结果中i2= -1,把实部与虚部分别合并。两个复数的积仍然是一个复数。

    即 

    向左转|向右转

     

    3 除法法则

    复数除法定义:满足 

    向左转|向右转

     的复数 

    向左转|向右转

     叫复数a+bi除以复数c+di的商。

     

    运算方法:将分子和分母同时乘以分母的共轭复数,再用乘法法则运算,

    即 

    向左转|向右转

     

    4 开方法则

    若zn=r(cosθ+isinθ),则

    向左转|向右转

     (k=0,1,2,3…n-1)

     

    我们把数学分析中基本的实变初等函数推广到复变初等函数,使得定义的各种复变初等函数,当z变为实变数x(y=0)时与相应的实变初等函数相同。

    注意根据这些定义,在z为任意复变数时,

    ①.哪些相应的实变初等函数的性质被保留下来

    ②.哪些相应的实变初等函数的性质不再成立

    ③.出现了哪些相应的实变初等函数所没有的新的性质。

    复数运算法则有:加减法、乘除法。两个复数的和依然是复数,它的实部是原来两个复数实部的和,它的虚部是原来两个虚部的和。复数的加法满足交换律和结合律。此外,复数作为幂和对数的底数、指数、真数时,其运算规则可由欧拉公式e^iθ=cos θ+i sin θ(弧度制)推导而得。

    加法法则

    复数的加法按照以下规定的法则进行:设z1=a+bi,z2=c+di是任意两个复数,

    则它们的和是 (a+bi)+(c+di)=(a+c)+(b+d)i。

    两个复数的和依然是复数,它的实部是原来两个复数实部的和,它的虚部是原来两个虚部的和。

    复数的加法满足交换律和结合律,

    即对任意复数z1,z2,z3,有: z1+z2=z2+z1;(z1+z2)+z3=z1+(z2+z3)。

    减法法则

    复数的减法按照以下规定的法则进行:设z1=a+bi,z2=c+di是任意两个复数,

    则它们的差是 (a+bi)-(c+di)=(a-c)+(b-d)i。

    两个复数的差依然是复数,它的实部是原来两个复数实部的差,它的虚部是原来两个虚部的差。

    posted on 2019-01-24 18:48 dajie6 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/dajie/p/10316252.html

    展开全文
  • c++实现复数运算

    千次阅读 2017-03-12 19:38:20
    #define _CRT_SECURE_NO_WARNINGS 1 #include using namespace std; class Complex { private: int _real; int _image; public: Complex(int real=1,int image=2) :_real(real) ,_image(imag
  • Python 复数运算类型问题

    千次阅读 2018-08-05 10:32:04
    在做题的时候遇到了这样的问题: 按照数学上的知识,我们通常会认为实部是1.23e+4,也就是12300;虚部是9.87e+6,也就是9870000。 但是程序运行结果却不是这样: ...复数>.<imag>...
  • Excel或C语言复数运算

    2020-07-04 12:56:49
    二、复数基本性质运算 三、复数二元运算 四、复数三角函数运算 五、C语言复数运算 ------------------------------------------------------------------------------------------------------ 一、简介 在...
  • C语言中的复数运算说明,complex.h文件的使用,以及未包含compex.h文件时复数数据类型的使用说明。
  • DelphiXE 复数运算

    2019-02-16 09:33:30
    使用结构体实现;支持指数(exp)、对数(log)、三角函数(sin cos tan)、乘方(power)、开方(root)、加减乘除、4次及以下多项式求根(getroot)、求长度、求角度、各种操作符重载
  • VS2017编译器关于C语言下,对复数运算并不支持,利用complex.h头文件并不适用,童年过自编的子函数,实现一般性的复数计算,精度与Matlab软件下对比,精度一致。 一、头文件ComplexCalculation.h,用于复数运算的...
  • 利用mathematica计算复数的对数难以找到合适的帮助文档,有意思的是找了基本数学手册居然没有复数对数的普遍运算公式,...不得不自己动手弄出来,本人将复数的各种运算包括指数特别是对数的运算方法和技巧写在这里。
  • 最近写计算程序经常要用到复数运算,以前都是用 gsl 库中对复数运算的支持。这两天看了看C99 标准,发现C99 中对复数运算的支持还是蛮给力的,这里做个总结。C99 中引入了两个关键字 _Complex和 _Imaginary,并且...
  • 复数数集拓展到实数范围内,仍有些运算无法进行。比如判别式小于0的一元二次方程仍无解,因此将数集再次扩充,达到复数范围。形如z=a+bi的数称为复数(complexnumber),其中规定i为虚数单位,且i^2=i×i=-1(a,b是...
  • 复数复数运算 | matlab可视化 matlab2018a 01 复数 MATLAB中,复数单位通常用 1i来表示,例如z = 1 + 1i。这里需要说明的是,i也可以用来表示复数单位,但是由于i通常用作循环的变量,所以MATLAB建议定义复数时...
  • Python实现复数运算

    万次阅读 多人点赞 2017-09-24 13:49:05
    #复数运算 import math class Complex: def __init__(self, x ,y): self.x = x self.y = y #加 def add(self): return Number(self.x.r + self.y.r, self.x.im + self.y.im).show()
  • Maxima 中的复数运算

    千次阅读 2012-08-02 17:52:03
    四则运算和大多数的函数直接就支持复数。比如下面的例子: rectform 函数可以将输入的复数化为标准的直角坐标形式。 polarform 函数则将复数化为极坐标形式。 realpart 和 imagpart 函数分别提取函数的实部和...
  • } public String toString() { //将一个复数显示为字符串 return this.l + " + " + this.v + "i"; } public static void main(String[] args){ Scanner scanner = new Scanner(System.in); double real1 , image1 ,...
  • 标准C++复数运算类详解及使用例程

    万次阅读 多人点赞 2016-03-17 11:38:59
    在C++中复数运算可以通过两种方式来实现:  1)标准C++复数运算库:complex ObjectName(realPart, imagePart);  2)自定义复数运算类:包括复数的实部、虚部、四则运算、模运算、共轭等。  后者可以根据需要自己...
  • C语言实现复数运算

    千次阅读 2019-10-10 19:36:18
    C99标准中已经引入了复数类型,使用时需要包含头文件complex.h。但Visual C++ 6.0完全不支持C99标准,推荐使用gcc编译器对.c文件进行编译执行。
  • 使用复数运算

    千次阅读 2012-11-12 11:05:33
    使用复数运算复数是由实部和虚部组成的数。例如: 3.2 + 4i 1 + 3i 1 + 2.3i 在特例情况下,如 0 + 3i 是纯虚数,通常写为 3i;5 + 0i 是纯实数,通常写为 5。可以使用 complex 数据类型来表示复数。 注...
  • 算法-->复数运算

    2017-08-01 18:56:24
    package 复数运算;/** * a,b分别是一个数的实部和虚部 b,c同上 * * @author 朱珍珍 * */ public class FuShu { // 加法 static void Add(double a, double b, double c, double d, double e[], double f[]) ...
  • 复数基础——复数的基本运算_2

    千次阅读 2018-10-23 16:44:15
    复数的基本运算 回顾复数 将下列数字写成复数形式: -21 7i  简单复习一下,复数是包含实数部分和虚数部分的数。 如果有a+bi,a是实数,b是实数,这是复数。a是实部,bi是虚数部分(注:虚部不包括i)。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,941
精华内容 3,176
关键字:

复数指数运算