【网易云课堂】Java语言程序设计进阶----第一周编程作业
来源:互联网 发布:win7开机时间优化 编辑:程序博客网 时间:2024/05/21 22:28
设计一个表示分数的类Fraction。这个类用两个int类型的变量分别表示分子和分母。 这个类的构造函数是: Fraction(int a,
int b) 构造一个a/b的分数。 这个类要提供以下的功能: double toDouble(); 将分数转换为double
Fraction plus(Fraction r);
将自己的分数和r的分数相加,产生一个新的Fraction的对象。注意小学四年级学过两个分数如何相加的哈。 Fraction
multiply(Fraction r); 将自己的分数和r的分数相乘,产生一个新的Fraction的对象。 void print();
将自己以“分子/分母”的形式输出到标准输出,并带有回车换行。如果分数是1/1,应该输出1。当分子大于分母时,不需要提出整数部分,即31/30是一个正确的输出
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); Fraction a = new Fraction(in.nextInt(), in.nextInt()); Fraction b = new Fraction(in.nextInt(), in.nextInt()); a.print(); b.print(); a.plus(b).print(); a.multiply(b).plus(new Fraction(5, 6)).print(); a.print(); b.print(); in.close(); }}class Fraction { private int a, b; public Fraction(int a, int b) { this.a = a; this.b = b; } double toDouble() { return 1.0 * a / b; } public Fraction plus(Fraction r) { int i = this.a * r.b + this.b * r.a; int j = this.b * r.b; return new Fraction(i, j); } public Fraction multiply(Fraction r) { int i = this.a * r.a; int j = this.b * r.b; return new Fraction(i, j); } void print() { int a, b; int t; a = this.a; b = this.b; while (b != 0) { //辗转相除法求最大公约数 t = a % b; a = b; b = t; } this.a /= a; this.b /= a; if (this.a == this.b) System.out.println(1); else System.out.println(this.a + "/" + this.b); }}
阅读全文
1 0
- 【网易云课堂】Java语言程序设计进阶----第一周编程作业
- 网易云课堂java程序设计(第一周编程作业)
- 网易云课堂java程序设计(第一周编程作业)
- 网易云课堂-java语言程序设计进阶作业2
- 【网易云课堂】Java语言程序设计进阶第一次作业总结
- Java语言程序设计进阶----第一周作业
- 记错??Java语言程序设计进阶----第一周作业
- 网易云课堂java程序设计(第四周编程作业)
- 网易云课堂-Java语言程序设计进阶-第一次测试答案
- 网易云课堂java进阶 编程题
- 数据结构(陈越)-网易云课堂 第一周编程题
- 网易云深度学习第一课第一周编程作业
- 网易云课堂JAVA进阶编程题3
- Java语言程序设计进阶----第四周作业
- 网易云课堂java程序设计(第二周编程作业)
- 网易云课堂java程序设计(第二周编程作业)
- 网易云课堂java程序设计(第三周编程作业)
- 计算机是如何工作的|Linux内核分析 第一周作业 - 网易云课堂
- 软件工程
- I2C设备驱动(四)-- 调试问题
- 接口的概念
- |poj 2299|权值线段树|Ultra-QuickSort
- eclipse创建maven项目
- 【网易云课堂】Java语言程序设计进阶----第一周编程作业
- 构造函数用于赋值
- 前台将数据存入集合并封装为JSON格式,后台用list遍历输入
- K近邻算法(kNN)学习——kd树
- leetcode 410. Split Array Largest Sum
- C++文件操作函数-读写文件
- android自动化测试工具【UiAutomator】——UiScrollable
- 使用外置安装的zookeeper后hbase出错;ERROR: The node /hbase is not in ZooKeeper
- 怎么样把网站内链优化与网站外链建设做好呢?