注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 在服务器系统Windows 20..
 帮助

C语言版--复数的实现


2007-06-22 10:42:05
 标签:C语言    [推送到技术圈]

#include<iostream.h>
typedef float * Complex;
Status InitComplex(Complex &C,float r1,float r2){
  C=new float[2];
  if(!C) return OVERFLOW;
  C[0]=r1;C[1]=r2;
  return OK;
}
Status DestoryComplex(Complex &C){
  delete[] C;
  return OK;
}
Status OutPut(Complex C){
  if(C[0]==0&&C[1]==0) cout<<0;
  if(C[0]&&C[1]>0) cout<<C[0]<<'+'<<C[1]<<'i';
  if(C[0]&&C[1]<0) cout<<C[0]<<C[1]<<'i';
  if(C[0]&&C[1]==0) cout<<C[0];
  if(C[0]==0&&C[1]) cout<<C[1]<<'i';
  return OK;
}
Status GetRe(Complex C,float &r1){
  r1=C[0];
  return OK;
}
Status GetIm(Complex C,float &r2){
  r2=C[1];
  return OK;
}
Status AddComplex(Complex C1,Complex C2,Complex &C){
  InitComplex(C,C1[0]+C2[0],C1[1]+C2[1]);
  return OK;
}
Status ReduceComplex(Complex C1,Complex C2,Complex &C){
  InitComplex(C,C1[0]-C2[0],C1[1]-C2[1]);
  return OK;
}
Status ChengfaComplex(Complex C1,Complex C2,Complex &C){
  float r1,r2;
  r1=C1[0]*C2[0]-C1[1]*C2[1];
  r2=C1[0]*C2[1]+C1[1]*C2[0];
  InitComplex(C,r1,r2);
  return OK;
}


类别:未分类 ┆ 技术圈()阅读() ┆ 评论()推送到技术圈返回首页  


    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: