1051 复数乘法 (15 分)

简介: 1051 复数乘法 (15 分)

051 复数乘法 (15 分)


复数可以写成 (A+Bi) 的常规形式,其中 A 是实部,B 是虚部,i 是虚数单位,满足 i2=−1;也可以写成极坐标下的指数形式 (R×e(Pi)),其中 R 是复数模,P 是辐角,i 是虚数单位,其等价于三角形式 (R(cos(P)+isin(P))。


现给定两个复数的 R 和 P,要求输出两数乘积的常规形式。

输入格式:

输入在一行中依次给出两个复数的 R1, P1, R2, P2,数字间以空格分隔。

输出格式:

在一行中按照 A+Bi 的格式输出两数乘积的常规形式,实部和虚部均保留 2 位小数。注意:如果 B 是负数,则应该写成 A-|B|i 的形式。

输入样例:

2.3 3.5 5.2 0.4

输出样例:

-8.68-8.23i

 

部分正确 (13分)

很奇怪,按理说就是一个复数计算,按照定义去做,没有可以出错的地方啊。

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
  double r1, p1, r2, p2;
  cin >> r1 >> p1 >> r2 >> p2;
  double r = r1 * r2;
  double p = p1 + p2;
  double A = r*cos(p);
  double B = r * sin(p);
  if (B >= 0)
    printf("%.2f+%.2fi", A, B);
  else
      printf("%.2f-%.2fi", A, -B);
 
  return 0;
}

//看了https://www.liuchuo.net/archives606/原来是输出格式的问题。题目要求实部和虚部均保留 2 位小数,应该是按照四舍五入,程序是直接截取两位。

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
  double r1, p1, r2, p2;
  cin >> r1 >> p1 >> r2 >> p2;
  double r = r1 * r2;
  double p = p1 + p2;
  double A = r*cos(p);
  double B = r * sin(p);
  if (A + 0.005 >= 0 && A < 0)
    printf("0.00");
  else
    printf("%.2f", A);
  if (B >= 0)
    printf("+%.2fi", B);
  else if (B + 0.005 >= 0 && B < 0)
    printf("+0.00i");
  else
    printf("%.2fi", B);
 
  return 0;
}
相关文章
|
机器学习/深度学习 传感器 人机交互
3D人体姿态估计(教程+代码)
3D人体姿态估计(教程+代码)
|
小程序 API 开发者
可以在钉钉小程序中直接跳转到审批单提交页面
【2月更文挑战第19天】可以在钉钉小程序中直接跳转到审批单提交页面
431 5
|
SQL 资源调度 NoSQL
实时计算 Flink版产品使用合集之使用Flink CDC SQL MongoDB Connector时,可以采取什么措施来提升数据消费速率
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
255 0
|
安全 Java 编译器
Java第一课——Java详细图文概述
Java第一课——Java详细图文概述
129 6
Java第一课——Java详细图文概述
|
安全 网络协议 网络安全
WireGuard 系列文章(一):什么是 VPN
WireGuard 系列文章(一):什么是 VPN
|
Java 数据安全/隐私保护
计算机Java项目|学生成绩管理系统(二)
计算机Java项目|学生成绩管理系统
140 0
计算机Java项目|学生成绩管理系统(二)
|
数据安全/隐私保护
常用的表单校验规则——邮箱/QQ/身份证号码/微信/电话/数字字母/整数/文本/密码等
常用的表单校验规则——邮箱/QQ/身份证号码/微信/电话/数字字母/整数/文本/密码等
173 0
DEDECMS织梦更改include目录重命名后,后台属性编辑无法加载的解决方法
织梦dedecms是新手站长使用得比较多的一个建站开源程序,正因如此,也是被被入侵挂马比较多的程序。下面就来跟大家说一下重新命名dedecms的include文件夹后后台属性编辑无法加载的问题
DEDECMS织梦更改include目录重命名后,后台属性编辑无法加载的解决方法
|
弹性计算 负载均衡 监控
负载均衡进阶:SLB常见问题解决方法
在由云栖社区和阿里云网络团队联合主办的2017阿里云网络技术在线高峰论坛上,阿里云技术专家添毅分享了网络产品部根据客户和阿里云运维的反馈提炼出的几大最主要和最常见的在使用SLB产品中发生的问题,并为大家介绍了针对这些常见问题的相应处理方法。
13987 0