PAT 1051 复数乘法
https://pintia.cn/problem-sets/994805260223102976/problems/994805274496319488
复数可以写成(A + Bi)的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i^2^ = -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
代码:
#include <bits/stdc++.h> using namespace std; float eps = 1e-8; int main()
{
float R1,P1,R2,P2;
scanf("%f %f %f %f",&R1,&P1,&R2,&P2);
float a1=0,a2=0,b1=0,b2=0;
float A=0,B=0;
a1=cos(P1)*R1;
a2=cos(P2)*R2;
b1=sin(P1)*R1;
b2=sin(P2)*R2;
A=a1*a2-b1*b2;
B=a1*b2+a2*b1; if(fabs(A) < eps && A >0) {
if(B < 0) {
// if(fabs(B) < 0.5) while(1) {}
printf("0.00-%.2fi\n", fabs(B) - 0.01);
}
else printf("0.00+%.2fi\n", B);
return 0;
} if(B < 0) {
printf("%.2f-%.2fi\n",A,fabs(B));
}
else
printf("%.2f+%.2fi\n",A,B);
return 0;
}
PAT 1051 复数乘法的更多相关文章
- PAT 1051 复数乘法(15 )(代码+思路)
1051 复数乘法(15 分) 复数可以写成 (A+Bi) 的常规形式,其中 A 是实部,B 是虚部,i 是虚数单位,满足 i2=−1:也可以写成极坐标下的指数形式 (R×e(Pi)),其 ...
- PAT——1051. 复数乘法
复数可以写成(A + Bi)的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i2 = -1:也可以写成极坐标下的指数形式(R*e(Pi)),其中R是复数模,P是辐角,i是虚数单位,其等价于三角形 ...
- PAT 1051. 复数乘法 (15)
复数可以写成(A + Bi)的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i2 = -1:也可以写成极坐标下的指数形式(R*e(Pi)),其中R是复数模,P是辐角,i是虚数单位,其等价于三角形 ...
- PAT(B) 1051 复数乘法(Java)
题目链接:1051 复数乘法 (15 point(s)) 参考博客:1051 复数乘法(PAT 乙级 C++实现)-guangjinzheng 题目描述 复数可以写成 (A+Bi) 的常规形式,其中 ...
- PAT 乙级 1051 复数乘法 (15) C++版
1051. 复数乘法 (15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 复数可以写成(A + Bi)的常规 ...
- PAT-乙级-1051. 复数乘法 (15)
1051. 复数乘法 (15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 复数可以写成(A + Bi)的常规 ...
- PAT Basic 1051 复数乘法 (15 分)
复数可以写成 ( 的常规形式,其中 A 是实部,B 是虚部,i 是虚数单位,满足 1:也可以写成极坐标下的指数形式 (,其中 R 是复数模,P 是辐角,i 是虚数单位,其等价于三角形式 (. 现给定两 ...
- PAT 1051 Pop Sequence[栈][难]
1051 Pop Sequence (25 分) Given a stack which can keep M numbers at most. Push N numbers in the order ...
- PAT 1051 Pop Sequence
#include <cstdio> #include <cstdlib> #include <vector> using namespace std; bool p ...
随机推荐
- 【转】numpy教程
[转载说明] 本来没有必要转载的,只是网上的版本排版不是太好,看的不舒服.所以转过来,重新排版,便于自己查看. 基础篇 NumPy的主要对象是同种元素的多维数组. 这是一个所有的元素都是一种类型.通过 ...
- 远心镜头(Telecentric lens)原理介绍
远心镜头(Telecentric lens)原理介绍 远心镜头(Telecentric lens),是为纠正传统镜头视差而设计,它可以在一定的物距范围内,使得到的图像放大倍率不会变化,简单的说这种镜头 ...
- 【HNOI2015】亚瑟王
题面 题解 考虑进行\(dp\). 设\(f[i][j]\)表示前\(i\)张卡中有\(j\)张被触发的概率. 我们可以知道第\(i\)张卡不被触发的概率为\((1 - p_i) ^ {r - j}\ ...
- requestAnimationFrame优势何在?
大概半年前,无意中在网上看到一个新的js函数requestAnimationFrame,据说,此函数可以优化传统的js动画效果,似乎是未来js动画的新方向. 当时我所在的项目正好用到了和js动画有关的 ...
- Linux入门基础(二):Linux磁盘及文件管理系统
磁盘管理 fdisk分区工具 只支持MBR分区 fdisk命令只有root用户能用 fdisk -l 列出所有安装磁盘及分区信息 fdisk /dev/sda (操作磁盘,按m可列出帮助界面,常用的操 ...
- iFIERO - (一) 宇宙大战 SPACE BATTLE — 场景SCENE、SpriteKit精灵、PARTICLE粒子及背景音乐
开始游戏教程前,首先介绍一下SpriteKit是什么?SpriteKit提供了一个图形渲染和动画的基础结构,你可以使用它让任意类型的纹理图片或者精灵动起来.SpriteKit使用渲染循环,利用图形硬件 ...
- oracle数据库数据字典应用
oracle数据字典 数据字典是由oracle服务器创建和维护的一组只读的系统表.数据字典分为两类:一是基表,二是数据字典视图. 数据字典视图包括用户名.用户权限.对象名.约束和审计等信息,是通过运行 ...
- 搬运_maven打包
参考文章 利用Maven插件将依赖包.jar/war包及配置文件输出到指定目录 <build> <plugins> <plugin> <groupId> ...
- 入门向:南邮CTF_ReadAsm2_WP
题目链接:http://ctf.nuptzj.cn/challenges#ReadAsm2 我比较菜,所以把思路全部敲上来了. 题目很明确告诉我们,这道题考察阅读汇编代码的能力. 在对编译环境和调用约 ...
- 使用Python一年多了,总结八个好用的Python爬虫技巧
用python也差不多一年多了,python应用最多的场景还是web快速开发.爬虫.自动化运维:写过简单网站.写过自动发帖脚本.写过收发邮件脚本.写过简单验证码识别脚本. 爬虫在开发过程中也有很多复用 ...