JAVA作业——两个分数进行减法运算

简介: JAVA作业——两个分数进行减法运算

代码

1. package timberman.ui;
2. 
3. import java.util.Scanner;
4. public class homework {
5. public static void main(String[] args) {
6. 
7. Scanner input =new Scanner(System.in);
8. 
9. int []first_num=new int [2];
10. int []second_num=new int [2];
11. 
12.         System.out.println("请输入第一个数字的分子");
13.         first_num[0]= input.nextInt();
14.         System.out.println("请输入第一个数字的分母");
15.         first_num[1]= input.nextInt();
16.         System.out.println("请输入第二个数字的分子");
17.         second_num[0]= input.nextInt();
18.         System.out.println("请输入第二个数字的分母");
19.         second_num[1]= input.nextInt();
20. 
21. long temp_mother=(first_num[1]*second_num[1])/gcd(first_num[1],second_num[1]);
22. long temp_son=first_num[0]*(temp_mother/first_num[1])-second_num[0]*(temp_mother/second_num[1]);
23. 
24. long real_gcd=gcd(temp_son,temp_mother);
25. long real_son=temp_son/real_gcd;
26. long real_mother=temp_mother/real_gcd;
27. 
28. if(real_son%real_mother==0){
29.             System.out.println(real_son/real_mother);
30.         }
31. else{
32.             System.out.println(real_son+"/"+real_mother);
33.         }
34.     }
35. 
36. public static long gcd(long a,long b) {
37. while(b!=0){
38. long temp=a%b;
39.             a=b;
40.             b=temp;
41.         }
42. return a;
43.     }
44. }

结果演示

结果不需约分

结果需要约分

结果为整数

相关文章
|
2月前
|
Java
Java基础学习day08-作业
本作业涵盖Java中Lambda表达式的应用,包括Runnable与Comparator接口的简化实现、自定义函数式接口NumberProcessor进行加减乘及最大值操作,以及通过IntProcessor处理整数数组,实现遍历、平方和奇偶判断等功能,强化函数式编程实践。
66 5
|
2月前
|
Java
Java基础学习day07-作业
本作业包含六个Java编程案例:1)动物类继承与多态;2)加油卡支付系统;3)员工管理类设计;4)学生信息统计接口;5)USB设备控制;6)家电智能控制。综合运用抽象类、接口、继承、多态等面向对象技术,强化Java基础编程能力。
167 3
|
2月前
|
Java
Java基础学习day06-作业
本内容为Java基础学习作业,涵盖两个案例:一是通过Card类及其子类GoldenCard、SilverCard实现加油卡系统,体现封装与继承;二是通过Shape类及子类Circle、Rectangle演示多态与方法重写,强化面向对象编程理解。
69 1
|
2月前
|
算法 Java
Java基础学习day03-作业
本内容包含多个Java编程案例,涵盖条件判断、循环、数组、随机数生成、素数判断等基础算法练习,适用于巩固Java语法与逻辑思维训练。
122 6
|
2月前
|
Java
Java基础学习day05-作业
本文为Java基础学习第五天作业,通过五个案例练习类与对象的定义、构造方法、set/get方法及成员方法的应用。涵盖女友、学生、教师、手机和电影等类的设计与测试,强化面向对象编程基础。
74 2
|
2月前
|
Java
Java基础学习day02-作业
本内容包含13个Java编程练习需求,涵盖变量定义、数据类型转换、运算符使用、键盘输入及条件判断等基础语法实践,适合初学者巩固Java核心基础知识。
80 5
|
2月前
|
Java
Java基础学习day04-作业
本作业包含8个Java编程案例,涵盖数组的定义与遍历、求和、最值计算、去极值求平均、元素倍增、二维数组行和计算及查找指定元素等内容,旨在巩固Java基础语法与数组操作技能。
206 1
|
Java
Java基础学习day01-作业
通过多个Java编程案例,学习变量定义、数据类型使用及控制台输出。涵盖字符串、数值、布尔值等字面量输出,变量赋值与修改,以及实际应用场景如学生信息和商品价格变化的模拟,夯实基础语法掌握。
90 0
|
5月前
|
机器学习/深度学习 存储 算法
Java 大视界 -- Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用(165)
本文围绕 Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用展开,剖析作业现状与挑战,阐述技术原理及应用方法,结合案例与代码,给出具有实操性的解决方案。
Java 大视界 -- Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用(165)
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
157 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!