7-36 复数四则运算 (15分)
一、题目要求
本题要求编写程序,计算2个复数的和、差、积、商。
输入格式:
输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部。题目保证C2不为0。
输出格式:
分别在4行中按照(a1+b1i) 运算符 (a2+b2i) = 结果的格式顺序输出2个复数的和、差、积、商,数字精确到小数点后1位。如果结果的实部或者虚部为0,则不输出。如果结果为0,则输出0.0。
输入样例1:
2 3.08 -2.04 5.06
输出样例1:
(2.0+3.1i) + (-2.0+5.1i) = 8.1i
(2.0+3.1i) - (-2.0+5.1i) = 4.0-2.0i
(2.0+3.1i) * (-2.0+5.1i) = -19.7+3.8i
(2.0+3.1i) / (-2.0+5.1i) = 0.4-0.6i
输入样例2:
1 1 -1 -1.01
输出样例2:
(1.0+1.0i) + (-1.0-1.0i) = 0.0
(1.0+1.0i) - (-1.0-1.0i) = 2.0+2.0i
(1.0+1.0i) * (-1.0-1.0i) = -2.0i
(1.0+1.0i) / (-1.0-1.0i) = -1.0
二、代码
本题难度不大,主要有些繁琐,正负号、零的控制输出是需要注意的地方。要仔细认真,争取一把过,而不用几次来回捯饬。
import java.util.Scanner;public class Main {public static void output(double a, double b) {System.out.printf("(%.1f",a,b);if(b>=0) {System.out.printf("+%.1fi)",b);}else {System.out.printf("%.1fi)",b);}}public static void result(double a, double b) {if(a<0.1&&a>-0.1) {a = 0;}if(b<0.1&&b>-0.1) {b = 0;}if(a!=0&&b!=0) {System.out.printf(" = %.1f", a);if(b>0) {System.out.printf("+%.1fi", b);} else if(b<0) {System.out.printf("%.1fi", b);}} else if(a==0&&b!=0) {System.out.printf(" = %.1fi", b);} else if(a!=0 && b==0) {System.out.printf(" = %.1f", a);} else if(a==0&&b==0) {System.out.printf(" = 0.0");}System.out.println();}public static void compute(double a1, double b1, double a2, double b2) {double a, b;output(a1, b1);System.out.print(" + ");output(a2, b2); a = a1 + a2;b = b1 + b2;result(a, b);output(a1, b1);System.out.print(" - ");output(a2, b2); a = a1 - a2;b = b1 - b2;result(a, b);output(a1, b1);System.out.print(" * ");output(a2, b2); a = a1*a2 - b1*b2;b = a1*b2 + a2*b1;result(a, b);output(a1, b1);System.out.print(" / ");output(a2, b2); a = (a1*a2+b1*b2)/(a2*a2+b2*b2);b = (a2*b1-a1*b2)/(a2*a2+b2*b2);result(a, b);}public static void main(String[] args) {double a1=0, b1=0, a2=0, b2=0, a=0, b=0;Scanner sc = new Scanner(System.in);String input = sc.nextLine();String[] tmp = input.split(" ");a1 = Double.parseDouble(tmp[0]);b1 = Double.parseDouble(tmp[1]);a2 = Double.parseDouble(tmp[2]);b2 = Double.parseDouble(tmp[3]);compute( a1, b1, a2, b2);}
}
7-36 复数四则运算 (15分)相关推荐
- 复数四则运算 (15 分)
7-76 复数四则运算 (15 分) 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部 ...
- 7-36 复数四则运算 (15 分)(python编写)
本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部.题目保证C2不为0. 输出格式 ...
- 7-36 复数四则运算 (15 分)
本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部.题目保证C2不为0. 输出格式 ...
- PTA C语言结构体 7-5 复数四则运算 (15 分)
本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部.题目保证C2不为0. 输出格式 ...
- 7-36 复数四则运算 (15分)【超级详细解析】
#include <stdio.h> #include <math.h>double a1,b1,a2,b2; //使用double,可以使小数之间的计算更加精确 double ...
- #7-8 复数四则运算 (10分)
** #7-8 复数四则运算 (10分)** ** 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2 ...
- PTA-复数四则运算 (15 分)(最简写法)
PTA-复数四则运算 (15 分) 像这种四则运算模拟,这样写最简单清晰了. #include <iostream> #include <cmath> #include < ...
- 7-3 复数四则运算
7-3 复数四则运算 (15分) 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚 ...
- 7-32 复数四则运算
7-32 复数四则运算 (15分) 文章目录 7-32 复数四则运算 (15分) 题目描述: 输入格式: 输出格式: 输入与输出样例: 思路分析: 代码: 测试样例点: 题目描述: 本题要求编写程序, ...
最新文章
- Action向视图传值的6种方式
- mybatis多条件查询
- 开辟经济发展的第二战场
- 使用vue 刷新页面后state数据被清空的问题(刷新总是跳转到登陆页面)
- 使用JavaScript修改浏览器URL地址栏的实现代码
- HDU3788 ZOJ问题
- 计算机研究与发展 杂志,《计算机研究与发展》杂志投稿的具体要求详解
- webpack前端构建工具学习总结(一)之webpack安装、创建项目
- 网络转载 ! 不保证网站安全 谨慎!
- 10个要点为Joomla网站创建完善的SEO优化内容
- mysql5.6二进制包_MySQL 5.6版本二进制包多实例安装
- python 百度文库_百度文库文档下载地址解析python版【摸索不易,还请支持】
- 韩国国立全北大学入学简介
- gnu开源代码_GNU Health扩展了对Raspberry Pi的支持,Megadeth的吉他手使用了开源原则,以及更多的开源新闻。...
- 关于1KB病毒的清除
- python zip压缩文件
- IOS界面push跳转后navigationController不显示
- idea设置主题背景
- Set的insert操作
- WSUS管理控制台打开报错