sdnu1215.复数乘积

来源:互联网 发布:淘宝买处方药审核难吗 编辑:程序博客网 时间:2024/05/20 18:50

sdnu1215.复数乘积
Time Limit: 1000 MS Memory Limit: 131072 KB
Total Submission(s): 53 Accepted Submission(s): 47
Description
数集拓展到实数范围内,仍有些运算无法进行。比如判别式小于0的一元二次方程仍无解,因此将数集再次扩充,达到复数范围。

  定义:形如z=a+bi的数称为复数(complex number),其中规定i为虚数单位,且i^2=i*i=-1(a,b是任意实数)

  我们将复数z=a+bi中的实数a称为复数z的实部(real part)记作Rez=a

  实数b称为复数z的虚部(imaginary part)记作 Imz=b.

  已知:当b=0时,z=a,这时复数成为实数;

  当a=0且b≠0时 ,z=bi,我们就将其称为纯虚数。

  定义: 对于复数z=a+bi,称复数z’=a-bi为z的共轭复数。

  定义:将复数的实部与虚部的平方和的正的平方根的值称为该复数的模,记作∣z∣

  规定复数的乘法按照以下的法则进行:

  设z1=a+bi,z2=c+di(a、b、c、d∈R)是任意两个复数,那么它们的积(a+bi)(c+di)=(ac-bd)+(bc+ad)i.

  其实就是把两个复数相乘,类似两个多项式相乘,在所得的结果中把i2换成-1,并且把实部与虚部分别合并.两个复数的积仍然是一个复数.
Input
两个复数分两行,每行两个数,代表复数的实部和虚部。
Output
两个复数的乘积。
Sample Input
1 1
1 1
Sample Output
0 2
Source
数据结构Java版 数据结构Java版 数据结构Java版

#include<stdio.h>int main(){    int a,b,c,d;    scanf("%d %d",&a,&b);    scanf("%d %d",&c,&d);    printf("%d %d",a*c-b*d,a*d+b*c);    return 0;}