分数加减法 java,Java练习 SDUT-2253_分数加减法
###分数加减法 Time Limit: 1000 ms Memory Limit: 65536 KiB ####Problem Description
编写一个C程序,实现两个分数的加减法 ####Input
输入包含多行数据 每行数据是一个字符串,格式是"a/boc/d"。
其中a, b, c, d是一个0-9的整数。o是运算符"+"或者"-"。
数据以EOF结束 输入数据保证合法
####Output 对于输入数据的每一行输出两个分数的运算结果。 注意结果应符合书写习惯,没有多余的符号、分子、分母,并且化简至最简分数 ####Sample Input
1/8+3/8 1/4-1/2 1/3-1/3
####Sample Output
1/2 -1/4 0
题解:同分计算分数的结果然后找分子分母的最大公因子约分化简。注意分子为0以及分子是分母的倍数的时候。
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
String s;
node a = new node();
while(cin.hasNextLine())
{
s = cin.nextLine();
a.ji(s);
}
cin.close();
}
}
class node
{
int a,b,c,d;
void get(String s)
{
a = s.charAt(0) - '0';
b = s.charAt(2) - '0';
c = s.charAt(4) - '0';
d = s.charAt(6) - '0';
}
void ji(String s)
{
int q,w,e;
get(s);
if(s.charAt(3)=='-')
{
w = b * d;
q = a * d - c * b;
}
else
{
w = b * d;
q = a * d + c * b;
}
if(q==0)
System.out.println(0);
else
{
e = gcd(w,q);
if(w/e==1)
System.out.println(q/e);
else
System.out.printf("%d/%d\n",q/e,w/e);
}
}
int gcd(int a,int b)
{
if(a<0)
a = -a;
if(b<0)
b = -b;
return b==0?a:gcd(b,a%b);
}
}
分数加减法 java,Java练习 SDUT-2253_分数加减法相关推荐
- Java黑皮书课后题第7章:7.4(分析成绩)编写一个程序,读入个数不确定的考试分数,并且判断有多少个分数是大于或等于平均分,多少个分数是低于平均分的。输入一个负数表示输入结束。假设最高分是100
7.4(分析成绩)编写一个程序,读入个数不确定的考试分数,并且判断有多少个分数是大于或等于平均分,多少个分数是低于平均分的.输入一个负数表示输入结束.假设最高分是100 题目 题目描述 破题 代码 运 ...
- java用switch语句根据分数输出学生等级
java用switch语句根据分数输出学生等级 /*** 从键盘上输入分数,计算等级grade=score/10;* <60,不及格,继续努力!* 60-69,及格,仍需努力!* 70-79,一 ...
- java毕业设计——基于java+Java awt+swing的愤怒的小鸟游戏设计与实现(毕业论文+程序源码)——愤怒的小鸟游戏
基于java+Java awt+swing的愤怒的小鸟游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+Java awt+swing的愤怒的小鸟游戏设计与实现,文章末尾附有本毕 ...
- java毕业设计——基于Java+Java ME的无线网络移动端的俄罗斯方块游戏设计与实现(毕业论文+程序源码)——俄罗斯方块游戏
基于Java+Java ME的无线网络移动端的俄罗斯方块游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Java+Java ME的无线网络移动端的俄罗斯方块游戏设计与实现,文章末尾附有 ...
- [零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](1)
MIS信息管理系统实战开发之使用MySQL实现保存 开发背景 ID.姓名.年龄为公共信息,而学生有成绩,工人有工资 定义一个抽象类Person(ID.姓名.年龄),学生是其子类,有成绩,工人是其子类有 ...
- 零基础学JAVA]Java SE基础部分-01. Java发展及JDK配置
1.课程名称:Java发展及JDK配置 本季介绍了JAVA的发展过程,包括JDK的发展历程,path路径的配置和classpath的配置及作用.并简单讲解了一个简单的JAVA程序,并通过此程序讲解了J ...
- Java - Java集合中的安全失败Fail Safe机制 (CopyOnWriteArrayList)
文章目录 Pre 概述 fail-safe的容器-CopyOnWriteArrayList add remove函数 例子 缺陷 使用场景 Pre Java - Java集合中的快速失败Fail Fa ...
- Java - Java集合中的快速失败Fail Fast 机制
文章目录 什么是 fail-fast 源码解读 Itr 为什么对集合的结构进行修改会发生并发修改异常-源码分析 修改方法之 remove 修改方法之 add 案例分享 [案例一] [案例二] [案例三 ...
- java比python难_python java JAVA比python难多少?
python和java哪个好? 学python好还是java好一次一次的失望后来渐渐放弃,哪怕后来有人提起你的名字小编脸上也不会泛起红晕. Python Python是一种面向对象的解释型计算机程序设 ...
- [Jmeter]通过批处理调用java,java从CSV动态读取登录的用户名和密码,并将其作为参数组合成字符串,写入外部.bat文件,然后通过Java执行这个外部批处理文件...
问题1:怎样通过批处理调用java代码? 问题2:怎样通过java从CSV文件获取到用户名和密码存入变量? 问题3:怎样将获取到的用户名和密码组合成字符串,写入外部批处理文件? 问题4:怎样在批处理文 ...
最新文章
- TOJ 3750: 二分查找
- c#如何读取相机手机的拍摄时间
- 【最小割】HDU 3987 Harry Potter and the Forbidden Forest
- 将“100px” 转换为100
- android 不同型号的终端的UI适配--一种解决方法
- 前端 重构时需要注意的事项_前端数据层落地实践
- jakarta ee_MicroProfile在Jakarta EE时代的作用
- Java十六进制浮点文字
- 【渝粤教育】国家开放大学2019年春季 0691-22T物理化学及实验 参考试题
- 【开发者成长】喧哗的背后:Serverless 的挑战
- matlab采样序列幅频特性,数字信号处理课设计指导书20130530.doc
- nodeJS 视频教程
- DeepMatch交友机器人:原来姹紫嫣红开遍,缘来就是你
- Maven下载及安装
- matlab绘制vti群速度,VTI介质中P波相速度与群速度的比较
- 三种迭代法解方程组(雅可比Jacobi、高斯-赛德尔Gaisi_saideer、逐次超松弛SOR)
- 搜狐号按作者火车头采集规则
- 最新美团java开发3轮技术面+hr面 点评(总结分析)
- 大数据因果推理与学习入门综合概述
- K线类型识别—单K线之同价线