7-3 复数的实部和虚部 (16分)
通常用一个形如”a+bi”的字符串来表示一个复数,a为复数的实部,b为复数的虚部。现在需要对输入的字符串进行分离,自动识别该复数的实部和虚部,并独立输出。
例如,对于输入的复数字符串“3-4.05i”,输出
complex 3-4.05i
the real part is 3
and the imaginary part is -4.05
注意:
1、用于表示复数的字符串符合数学上的书写习惯。
2、每组测试数据仅包括一个用于表示复数的字符串。
3、输入保证合法。
输入示例:
-4.567+3.987i
输出示例:
complex -4.567+3.987i
the real part is -4.567
and the imaginary part is 3.987
#include <iostream>
#include <string>
#include <cstring>
using namespace std;
class Complex{
private:string str;float real;float imag;void split(){int len=str.size()-1;if(str[len]!='i') {real=stof(str);imag=0;}else if(str=="i"){real=0;imag=1;}else{if(str.find('+',0)!=string::npos){char *p,*b;char s[100];strcpy(s,str.c_str());p=strtok(s,"+");real=stof(p);b=strtok(NULL,"+");imag=stof(b);}else if(str.find('-',0)!=string::npos){size_t l=str.find_last_of('-');if(l==0){real=0;if(str=="-i"){imag=-1;}else{imag=stof(str.substr(0,len));}}else{real=stof(str.substr(0,l));imag=stof(str.substr(l,len-l));}}else{real=0;imag=stof(str.substr(0,len));}}}
public:Complex(string n){str=n;split();}void dis(){cout<<"complex "<<str<<endl;cout<<"the real part is "<<real<<endl;cout<<"and the imaginary part is "<<imag<<endl;}
};
int main()
{string n;cin>>n;Complex c(n);c.dis();return 0;
}
7-3 复数的实部和虚部 (16分)相关推荐
- 建立一个复数类Complex,其私有数据成员mX和mY表示复数的实部和虚部,构造函数Complex用于对复数的实部和虚部初始化
建立一个复数类Complex,其私有数据成员mX和mY表示复数的实部和虚部,构造函数Complex用于对复数的实部和虚部初始化,友员函数Add,Sub,Mul和Div分别用于进行复数的加.减.乘和除法 ...
- 傅里叶变化的本质:复数的实部和虚部的对应关系
之前做计算光学成像,需要用到图像的相位信息.但是设计到傅里叶变化的实部和虚部的问题的时候,发现教科书上一般来讲,只会介绍一句: 如果f(x,y)是实函数,则它的傅里叶变化就是关于原点共轭对称的: F( ...
- python复数的实部和虚部都是整数嘛_Python学习笔记:从入门到放弃(2)基本语法...
这次主要就记录一下Python中的基本语法,有标识符,注释,行与缩进,print函数输出以及数字类型和字符串 标志符: 第一个字符必须是字母表中字母或下划线 _ . 标识符的其他的部分由字母.数字和下 ...
- python中复数的实部和虚部都是浮点数_Python学习笔记:从入门到放弃(2)基本语法...
这次主要就记录一下Python中的基本语法,有标识符,注释,行与缩进,print函数输出以及数字类型和字符串 标志符: 第一个字符必须是字母表中字母或下划线 _ . 标识符的其他的部分由字母.数字和下 ...
- python中复数的实部和虚部都是浮点数_Python基础:数值(布尔型、整型、长整型、浮点型、复数)...
一.概述 Python中的 数值类型(Numeric Types)共有5种:布尔型(bool).整型(int).长整型(long).浮点型(float)和复数(complex). 数值类型支持的主要操 ...
- python复数的实部和虚部都是整数嘛_数字类型
Python数字数据类型用于储存数值. 数字类型是不可变类型,所谓不可变类型,指的是类型的值一旦有不同了,那么他就是一个全新的对象,数字1和2分别代表两个不同的对象,对变量重新赋值一个数字类型,会新创 ...
- python复数的实部和虚部都是整数嘛_Python数字(Number)
Python 数字数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间. 以下实例在变量赋值时 Number 对象将被创建: var1 = 1 var ...
- python访问复数的实部,虚部和模值
>>> a=4+5j 产生一个复数 >>> a (4+5j) >>> a.real 复数的实部..real 4.0 >> ...
- python复数的实部和虚部的数字类型_Python基础:数据类型-数字(5)
在Python中,所有的数据类型都是类,每一个变量都是类的实例. Python中有6种标准数据类型:数字(Number).字符串(String).列表(List).元组(Tuple).集合(Sets) ...
最新文章
- 机器学习模型如何获得可重复的结果?最佳实践是什么?如何处理random_state参数?
- 【STM32】端口复用和重映射,完全重映射,部分重映射
- SQLI DUMB SERIES-16
- C51单片机————总线与系统扩展
- emqx http not found 怎么回事_幽默笑话:行倒是行,但两个大男人这么说话算怎么回事...
- 一天搞定DXUT三步曲之二:添加文本
- Win7 下安装ubuntu14.04双系统
- http请求接口开发的几种方式
- 100道c语言经典编程题,C语言经典例题100道
- 实验代做 行人识别_实验室代做实验项目
- Android composse 声明式UI,更简单的自定义
- html中如何设计圆形图案,纯CSS绘制漂亮的圆形图案效果
- その他トランザクションコード
- Ubuntu18 安装SciDavis
- java a201游戏_A201 Java Spring+SpringMVC+MyBatis开发教育网站视频教程
- ffmpeg 设置网络代理_MAC下使用SSH设置代理的办法
- 滨州稻田绽放人生 国稻种芯·中国水稻节:山东盐碱地变良田
- VSCODE 空格键自动补全
- 【EEG】脑电图研究常用术语
- 机器人叶韵_绝命响应,47年后智能机器人实现独立自由,人类该如何应对