PAT——1051. 复数乘法
复数可以写成(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
package com.hone.basical; import java.util.Scanner; /**
* 原题目:https://www.patest.cn/contests/pat-b-practise/1051
*
* @author Xia 了解其规律,然后一一对运算即可。 有个小小的检测没有过,缺1分
*/
public class basicalLevel1051pluralMultipy { public static void main(String[] args) { Scanner in = new Scanner(System.in);
double R1 = in.nextDouble();
double P1 = in.nextDouble();
double R2 = in.nextDouble();
double P2 = in.nextDouble();
double rs, ps;
rs = R1 * Math.cos(P1) * R2 * Math.cos(P2) - R1 * Math.sin(P1) * R2 * Math.sin(P2);
ps = R1 * Math.sin(P1) * R2 * Math.cos(P2) + R2 * Math.sin(P2) * R1 * Math.cos(P1);
//因为牵扯到四舍五入,所有对于小于0.001,都可以当作零处理
if (Math.abs(rs)<=0.001) {
System.out.println("0.00") ;
}else {
System.out.printf("%.2f", rs);
} if (ps > 0){
System.out.printf("+%.2fi", ps);
}else if (Math.abs(ps)<=0.001) {
System.out.println("+0.00i");
}else{
System.out.printf("%.2fi", ps);
}
}
}
PAT——1051. 复数乘法的更多相关文章
- PAT 1051 复数乘法(15 )(代码+思路)
1051 复数乘法(15 分) 复数可以写成 (A+Bi) 的常规形式,其中 A 是实部,B 是虚部,i 是虚数单位,满足 i2=−1:也可以写成极坐标下的指数形式 (R×e(Pi)),其 ...
- PAT 1051 复数乘法
https://pintia.cn/problem-sets/994805260223102976/problems/994805274496319488 复数可以写成(A + Bi)的常规形式,其中 ...
- 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 ...
随机推荐
- Redis-Map
Redis Map 存储K-V键值对.(跟Java的Map类比) 哈希表结构: typedef struct dictht { dictEntry **table; //哈希表数组 unsigned ...
- 单点登录-SSO
单点登录 (Single Sign-On ) 1.同域单点登录 登录的时候,设置cookie的域即可. 2.跨域单点登录 重点是,如何在浏览器端保存登录的标识. 祭图:(脑补) 三个系统: a.aaa ...
- python_tensorflow_Django实现逻辑回归
1.工程概要 2.data文件以及input_data文件准备 链接:https://pan.baidu.com/s/1EBNyNurBXWeJVyhNeVnmnA 提取码:4nnl 3.logiss ...
- Fatal error: Namespace declaration statement has to be the very first statement or after any declare call in the script in
学习php的命名空间,直接把手册的代码粘贴过来,却报错了:Fatal error: Namespace declaration statement has to be the very first s ...
- javascript实现数据结构: 树和森林
树的3种常用链表结构 1 双亲表示法(顺序存储结构) 优点:parent(tree, x)操作可以在常量时间内实现 缺点:求结点的孩子时需要遍历整个结构 用一组连续的存储空间来存储树的结点,同时在每个 ...
- Java设计模式—解释器模式&迭代器模式简介
解释器模式在实际的系统开发中使用得非常少,因为它会引起效率.性能以及维护等问题,一般在大中型的框架型项目能够找到它的身影,如一些数据分析工具.报表设计工具.科学计算工具等,若你确实遇到" ...
- Java设计模式—享元模式
享元模式:是池技术的重要实现方式. 定义如下: 使用共享对象可有效地支持大量的细粒度的对象. 个人理解:享元模式利用共享对象的技术,解决了Java中内存溢出的问题. 享元模式的定义为我们提出了两个要求 ...
- c# 序列化接口(转载贴)
http://www.cnblogs.com/TianFang/p/3724449.html
- Android 自定义简易的方向盘操作控件
最近在做一款交互性较为复杂的APP,需要开发一个方向操作控件.最终用自定义控件做了一个简单的版本. 这里我准备了两张素材图,作为方向盘被点击和没被点击的背景图.下面看看自定义的Wheel类 publi ...
- Week1——JavaEE
本科目标 首先,对我来说自己想走的方向是JavaWeb后台开发,因此JavaEE对我来说也是比较重要的,想学好这门课.进一步巩固自己现有的基础知识,完善自己的项目经验,更加熟悉开发流程.在框架方面我还 ...