C++设计一个类 实现复数加减乘除的功能,?? 代码版的啊 最好能有注释??
#include "iostream"using namespace std;class calc{public: int a1,b1,a2,b2; char temp[32]; void add(); void cut(); void multiply(); void divide();private: void init();};void calc::init(){ cout<<"请输入第一个数的实部:"; cin>>a1; cout<<"请输入第一个数的虚部:"; cin>>b1; cout<<"请输入第二个数的实部:"; cin>>a2; cout<<"请输入第二个数的虚部:"; cin>>b2;}void calc::add(){ init(); sprintf(temp,("%d,%di + %d,%di = %d,%di"),a1,b1,a2,b2,a1+a2,b1+b2); cout<<temp<<endl;}void calc::cut(){ init(); sprintf(temp,("%d,%di - %d,%di = %d,%di"),a1,b1,a2,b2,a1-a2,b1-b2); cout<<temp<<endl;}void calc::multiply(){ init(); sprintf(temp,("%d,%di × %d,%di = %d,%di"),a1,b1,a2,b2,a1*a2-b1*b2,a1*b2+a2*b1); cout<<temp<<endl;}void calc::divide(){ init(); sprintf(temp,("%d,%di ÷ %d,%di = %d,%di"), a1,b1,a2,b2,(a1*a2+b1*b2)/(a2*a2+b2*b2),(b1*a2-a1*b2)/(a2*a2+b2*b2)); cout<<temp<<endl;}void main(){ int i; calc ll; while(1) { cout<<endl<<endl; cout<<" 1.加法 2.减法 3.乘法 4.除法 5.退出"<<endl; cin>>i; switch (i) { case 1:ll.add(); break; case 2:ll.cut(); break; case 3:ll.multiply(); break; case 4:ll.divide(); break; case 5:return; break; default: cout<<"输入错误!"<<endl; } }}墨然殇2023-06-21 08:28:381
c语言复数加减法如何实现输入型如1-i或1+i的数据
那个i,你把它当成字母输出阿啵呲嘚2023-06-21 08:28:312
电压复数加减问题
U1uff0bU2uff1dj30uff0b100uff1d104.4U000200cb16.70u20e3ufe0fV陶小凡2023-06-21 08:28:301
C语言用头文件实现复数加减法
in cmplx.h#ifndef CMPLX1_H_#define CMPLX1_H_#ifdef __cplusplusextern "C"{#endiftypedef struct _CMPLX{ float c_real; float c_vir;}CMPLX, *PCMPLX;CMPLX CMPLX_(float real, float vir);//operations between CMPLXCMPLX C_add(CMPLX c_l, CMPLX c_r);CMPLX C_sub(CMPLX c_l, CMPLX c_r);CMPLX C_mul(CMPLX c_l, CMPLX c_r);CMPLX C_div(CMPLX c_l, CMPLX c_r);void C_out(CMPLX data);#ifdef __cplusplus}#endif#endif /* CMPLX1_H_ */in cmplx.c#include <stdio.h>#include <string.h>#include "cmplx.h"CMPLX CMPLX_(float real, float vir){ CMPLX d; d.c_real = real; d.c_vir = vir; return d;}CMPLX C_add(CMPLX c_l, CMPLX c_r){ c_l.c_real += c_r.c_real; c_l.c_vir += c_r.c_vir; return c_l;}CMPLX C_sub(CMPLX c_l, CMPLX c_r){ c_l.c_real -= c_r.c_real; c_l.c_vir -= c_r.c_vir; return c_l;}CMPLX C_mul(CMPLX c_l, CMPLX c_r){ int rl = c_l.c_real; int vl = c_l.c_vir; int rr = c_r.c_real; int vr = c_r.c_vir; c_l.c_real = rl*rr - vl*vr; c_l.c_vir = rl*vr + rr*vl; return c_l;}CMPLX C_div(CMPLX c_l, CMPLX c_r){ CMPLX c_r_r = CMPLX_(c_r.c_real, -c_r.c_vir);/*a-b*i*/ float c_d = (c_r.c_real*c_r.c_real + c_r.c_vir*c_r.c_vir); if(c_d == 0) { memset(&c_l, 0x00, sizeof(CMPLX)); return c_l; } c_l = C_mul(c_l, c_r_r); c_l.c_real /= c_d; c_l.c_vir /= c_d; return c_l;}void C_out(CMPLX data){ if(data.c_real!=(float)0.0 && data.c_vir!=(float)0.0) printf("%f%c%fi ", data.c_real,data.c_vir<0?("-"):("+"), data.c_vir<0?(-data.c_vir):(data.c_vir)); else if(data.c_real == (float)0) printf("%fi ", data.c_vir); else if(data.c_vir == (float)0) printf("%f ", data.c_real);}in P4.c#include <stdio.h>#include "cmplx.h"int test(){ CMPLX dat1 = CMPLX_(2, 1); CMPLX dat2 = CMPLX_(1, 1); CMPLX dat_sum = C_add(dat1, dat2); CMPLX dat_sub = C_sub(dat1, dat2); CMPLX dat_mul = C_mul(dat1, dat2); CMPLX dat_div = C_div(dat1, dat2); C_out(dat_sum); C_out(dat_sub); C_out(dat_mul); C_out(dat_div); return 1;}int main(){ test(); return 0;}人类地板流精华2023-06-21 08:28:292
C++ 实现复数加减运算
#include "iostream.h"class Complex{ private: double real,imag; public: Complex(double r,double i) { real=r; imag=i; } /*friend Complex operator +(Complex& a,Complex& b)//友元运算符重载 { double r=a.real+b.real; double i=a.imag+b.imag; return Complex(r,i); }*/ Complex operator +(Complex&b)//类运算符重载 { double r=real+b.real; double i=imag+b.imag; return Complex(r,i); } show() { cout<<real<<"+"<<imag<<"i"; } };void main(){ Complex c1(6,3),c2(3,6),c=c1+c2; c1.show(); cout<<"+"; c2.show(); cout<<"="; c.show(); cout<<endl;}以上重载"+",重载"-"以此类似,仅供参考苏州马小云2023-06-21 08:28:281
C++ 实现复数加减运算
给你弄了几行~你照着写下去吧~好久没有动手了~#includeclassComplex{public:Complex(doubler=0,doublev=0):real(r),virt(v){}friendComplexoperator+(Complexa,Complexb);friendostream&operator<<(ostream&out,Complex&a);private:doublereal;doublevirt;};ostream&operator<<(ostream&out,Complex&a){returnout<评论00加载更多拌三丝2023-06-21 08:28:272
C++ 复数加减乘除
STL中有,可以直接用#include <complex>using namespace std;可以直接用,如果要查看的话可以查看源码进行自己设计。铁血嘟嘟2023-06-18 08:00:523
复数加减乘除运算
复数的加减运算,只要实部和虚部分别计算代数和就可以了;实数的乘法运算,按多项式的运算规则,记住i*i=-1就行,乘完以后再作实数的加减运算;实数的除法,先将除式看作一个分母,再对分子分母同乘以分母的共轭复数,以实现分母的实数化,再对分子作复数的乘法运算就可以了。余辉2023-06-18 08:00:161
卡西欧FX-991ES计算器能计算电路里的复数加减乘除然后换算成角度吗?
不可以,他只能用a+jb表示需要自己手动换算。fx-991ES卡西欧计算器如何计算矩阵,行列式:1.按MODE,6,进入矩阵计算模式;2.首先是创建一个新矩阵:(刚进模式的时候会自动提示,也可以按SHIFT,4,1自己创建)3.选择矩阵A,B,C中的一个,再选大小(有两页);4.其次是矩阵编辑界面,输入表达式,按[=] 可以编辑矩阵内容。按AC退出。5.按SHIFT,4,2 可以选择矩阵并编辑;6.然后是计算;7.退出编辑界面。按SHIFT,4可以选择矩阵了,3-5分别对应A-C。可以加减乘,平方之类的;8.结果会保留在MatAns中(SHIFT,4,6,=打开)。小白2023-06-17 01:45:011
卡西欧FX-991ES计算器能计算电路里的复数加减乘除然后换算成角度吗
我的是卡西欧fx-991cnx中文版。结果可以直接输出角度形式,方法是在菜单里选择复数模式,然后SHIFT→菜单→按下键→按2(复数)→按2(r∠θ)。这时候退出去输出结果就直接是角度形式小菜G的建站之路2023-06-17 01:44:414
卡西欧FX-991ES计算器能计算电路里的复数加减乘除然后换算成角度吗
可以的,复数模式下,shift2,然后选择你想要转换成的形式真颛2023-06-17 01:44:413
卡西欧FX-991ES计算器能计算电路里的复数加减乘除然后换算成角度吗?
卡西欧FX-991ES计算器能计算电路里的复数加减乘除然后换算成角度吗? 不可以,他只能用a+jb表示需要自己手动换算。 fx-991ES卡西欧计算器如何计算矩阵,行列式: 1.按MODE,6,进入矩阵计算模式; 2.首先是建立一个新矩阵:(刚进模式的时候会自动提示,也可以按SHIFT,4,1自己建立) 3.选择矩阵A,B,C中的一个,再选大小(有两页); 4.其次是矩阵编辑介面,输入表示式,按[=] 可以编辑矩阵内容。按AC退出。 5.按SHIFT,4,2 可以选择矩阵并编辑; 6.然后是计算; 7.退出编辑介面。按SHIFT,4可以选择矩阵了,3-5分别对应A-C。可以加减乘,平方之类的; 8.结果会保留在MatAns中(SHIFT,4,6,=开启)。 卡西欧(CASIO)函式计算器FX-991ES PLUS灰白色里面是什么电池 和fx-82ES plus不一样,不是7号电池,是钮扣电池和太阳能电池双重电源。大概是为了减轻重量吧,不过没什么关系。 浙大自动控制原理考试能用卡西欧 FX-991ES PLUS计算器吗? 可以的 卡西欧的计算器能将复数转化能带角度的形式吗 科学函式计算器可以,普通加减乘除的那种不行。像82这种有座标转换和模辐角转换 哪种计算器可以算复数?卡西欧FX-82ES可以吗? FX-82ES不可以,FX-991ES&FX-500ES可以 但正版的FX-82ES可以改装升级 方法是: 开启计算器后盖,找到P4(或P5)两个半圆,用2B将P4(P5)涂好通电,就升级为FX-991ES(涂P5为FX-500ES),要复原只要擦去铅笔的印迹就可以了! 计算器卡西欧82ES(B)版怎么改算复数 在所有操作之前,请先检查计算器萤幕左上角是否有“M”字样。如果有,请按0+shift+RCL(STO)+ M+。如果没有,请继续操作。 所有隐藏模式调出前请先进入异常模式: 注:【】代表注释 ( )代表第二功能键 首先开启计算器电源(ON) 1. shift 2. + (Pol) 3. 1 4. shift 5. ")" ( , ) 6. 0 7. ) 【前7步最后显示为"Pol(0,1)"】 8. = 9. 狂按分数线,直到按到顶不动为止【似乎是7到8个】 10. 按= (显示Syntax ERROR 不要管它), AC,左 11. 1 12. 幂【在方向键下面,就是X上面有个小白框的键】 13. = 14. AC 15. 向上键 16. AC 17. 向左键三次 18. DEL【删掉1,出现“r=1,φ=0”】 19. 【游标在最前面】按一下分数线 20. 分数线上面输入1,下面也输入1 【其实不需要一定要是1,只要分子分母一样就可以了】 21. = 22. AC 此时,已是异常模式,所有隐藏模式的前提 进入异常模式后就可以实行升级了 (异常模式的介面和初始模式一模一样,如何鉴定?——随便输入一个运算,如“1+2” 按 = ,如果没有显示结果,那你就成功进入异常模式啦,当然要想看到结果的话就按“S<=>D”。。。) CMPLX模式(复数计算模式): 接下刚刚进的异常模式: 注:【】代表注释 1. Ans、Ans、Ans、Ans、Ans、Ans、Ans、Ans、sin(、sin(、sin(、…… 【就是按8下“Ans”键,然后无数下“sin(”键直到出现 Syntax ERROR 不要管它】 2. 按“AC” 【如果萤幕变暗为正常现象,请手动调节亮度】 3. 按SHIFT+9(CLR)+1(Setup)+=(Yes) 按AC 然后按SHIFT+9(CLR)+2(Memory)+ =(Yes) 按AC 4. 打出“r”,具体方法就是按“根号” + “根号” + “根号” + “根号” + “根号” + “幂”+“幂”+“幂”+“幂”+“幂” + “幂” 【就是5下“根号”6下“幂”,“根号”在“三次方”下面,就是“平方根”,简称“根号”】 【补充:按最后一下“幂”后会出现 x10什么什么的 最后有一个“?” ,不要慌,接着下一步】 5. 按“删”15下,第一个就是“r”了 【“r”后面有一串乱码,别管他,继续下一步。如果你按啊按啊忘了是几了,只要是15下之内的就没关系,这时,注意了,慢慢按,好好看游标,看到正好“r”出现在游标后,停止!不能再按了!如果是超过15下,不好意思。。重来吧。。】 6. 再在“r”前面按“)”键,然后按“=”,然后按“AC”。 7. 按SHIFT+9(CLR)+2(Memory)+=(Yes) 然后按“AC”。 8. 按两下“右”键,然后按“DEL”键【就是把“)”删掉】 9. 按“1”键,然后按“:”键【“:”键为ALPHA键+ALPHA键下面一个键】 10. 按“=”两下(没反应,但一定要按两下,很关键) 11. 按MODE,按2(CMPLX),此时萤幕可能变暗.需要的话接下来按on,开始调萤幕 12. shift+MODE,下,“5”,右右右右。。随便你调。。 13. ON,shift+MODE,下,“4”,“1” 14. shift+MODE,“3” 15. shift+MODE,“8”,“1”(后三步是为了正常使用)」好啦,现在按下ENG键(第五行第二列的),出来了吧?别急,还有一步 16. 我们来按下(2+i)的平方,等于。。不对呀,有问题?别怕,再按「shift+2,“4” , 等号」,出来了! 此模式关机后再开仍可使用,切记不可在隐藏模式下再用STAT或TABLE模式,若想还原可以按 MODE+1(COMP)或者按shift+MODE+1 清除设定 MATRIX模式(矩阵模式) 方法和调出CMPLX模式的方法一样,从CMPLX帖第十步开始讲起 11. 按MODE,按6 (MATRIX) AC, ON (这时你会看到最上面一排有“MAT” 字样,这就是矩阵模式) 12. 按下SHIFT+4,就拉出选单啦,用「shift+4后按1」,输入矩阵,再作计算 VECTOR模式(向量模式) 方法和调出CMPLX模式的方法一样,从CMPLX帖第十步开始讲起 11. 按MODE,按8(VECTOR) AC, ON 【这时你会看到最上面一排有“VCT” 字样,这就是向量模式】 因为最近本人没碰到向量题,再者觉得向量不用这个做更快,故吾没试过向量模式,但网上说“这向量模式和矩阵模式使用时无任何缺陷,与991完全一样”。。。敬请谅解 BASE-N模式(可用2进位制、8进位制、10进位制以及16进位制数值进行计算): 1.Ans、Ans、Ans、Ans、Ans、Ans、Ans、Ans、sin(、sin(、sin(、…… (就是按8下“Ans”键,然后“sin(”键按到底) 2.按“AC”(出现 Syntax ERROR 不要管它)(如果萤幕变暗为正常现象,请手动调节亮度) 3.按SHIFT+9(CLR)+1(Setup)+=(Yes) 按AC 然后按SHIFT+9(CLR)+2(Memory)+ =(Yes) 然后按AC 4.“(”、“)”、“(”、“)”、“(”、“)”、“(”、“)”,然后打“sin(”“sin(”“sin(”…… (就是按相对的括号键四组,然后“sin(”键按到底) 5.这是萤幕会无显示(不要管他) 6.按AC无数次,接着按下LOG键,就完成了 【注:1.此模式下按LOG为2进位制,IN键为8进位制,“平方”键为10进位制,幂键为16进位制. COS,TAN键分别为E、F,前面4个是ABCD(16进位制用的 2. 此模式关机后再开即消失,还原为初始模式. 】 卡西欧FX-991ESPLUS 这个计算器能不能算行列式的值 我可以肯定的告诉你,是可以用的。考试不让带程式设计功能的计算器。比如5800P。。。。我二建参加考试的时候用的就是5800P,一般老师也不认识,但最好还是别冒险。呵呵 卡西欧5800正常计算加减乘除占记忆体吗?如果正常计算加减乘除占记忆体 怎么删除?求卡西欧5800高手回答 用了好几年,从未发觉会影响的。同学,你想多了-- 如果你非要删除的后,那就看后盖那里有个P的小孔,那个牙签什么的,给戳下,保证连里面的所有程式都没了西柚不是西游2023-06-17 01:44:331
复数加减法的几何意义
对复数加、减法几何意义的理解 (1)对于应用向量加法法则求复数的和,可以利用平行四边形法则,也可以利用三角形法则. (2)复数的减法法则用向量的减法法则来进行运算,应用向量来进行复数的减法,三角形法则显得更加(1)复数代数形式的加法运算法则是一种规定,以后就要按照规定进行运算.(2)复数的加法法则是在复数的代数形式下进行的.(3)复数的加法运算的结果仍然是复数.(4)实数的移项法则在复数中仍然成立.(5)复数的加法法则可以推广到多个复数相加的情形.对复数加、减法几何意义的理解(1)对于应用向量加法法则求复数的和,可以利用平行四边形法则,也可以利用三角形法则.(2)复数的减法法则用向量的减法法则来进行运算,应用向量来进行复数的减法,三角形法则显得更加方便.(3)复数的加减法运算可以通过向量的加减法运算进行;反之,向量的加减法运算也可以通过复数的加减法运算进行.(4)利用复数的加减法运算的几何意义可以直观地解决复数问题.方便.九万里风9 2023-06-16 19:45:561