蓝桥杯JAVA省赛2013-----B------5(有理数类)
生活随笔
收集整理的這篇文章主要介紹了
蓝桥杯JAVA省赛2013-----B------5(有理数类)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
五、有理數(shù)類(lèi)
【答案】:Rational(this.rax.rb + this.rbx.ra, this.rb*x.rb)
public class Test01 {static class Rational //內(nèi)部類(lèi) 【main調(diào)用內(nèi)部類(lèi) : 內(nèi)部類(lèi)前 要加 static】{private long ra;private long rb;private long gcd(long a, long b){ //輾轉(zhuǎn)相除法 求 最大公約數(shù)gcdif(b==0) return a;return gcd(b,a%b);}public Rational(long a, long b){ra = a;rb = b;long k = gcd(ra,rb);if(k>1){ //需要約分ra /= k;rb /= k;}}// 加法public Rational add(Rational x){return new Rational(this.ra*x.rb + this.rb*x.ra, this.rb*x.rb); //填空位置// 一定返回Rational 所以, 先new一個(gè)Rational// 分母:分母*分母:this.rb*x.rb// 分子:自己的分子*x的分母+自己的分母*x的分子}// 乘法public Rational mul(Rational x){return new Rational(ra*x.ra, rb*x.rb); //更新 分子與分母:分子*分子、分母*分母}public String toString(){if(rb==1) return "" + ra;return ra + "/" + rb;}}public static void main(String[] args) {Rational a = new Rational(1,3);Rational b = new Rational(1,6);Rational c = a.add(b);System.out.println(a + "+" + b + "=" + c);}}根據(jù)乘法的返回值推測(cè)加法 return new Rational(rax.ra, rbx.rb);
總結(jié)
以上是生活随笔為你收集整理的蓝桥杯JAVA省赛2013-----B------5(有理数类)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 长江的长度是多少 长江长度多长
- 下一篇: 跳棋必胜的十个技巧 跳棋必胜窍门介绍