Rss & SiteMap

课外天地 李树青 http://www.njcie.com

李树青 论坛 南京 财经 课外天地
共1 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:程序代码——支持加减乘除的分数类

1楼
admin 发表于:2009/4/10 9:47:10

class Fraction {
        private long numerator;
        private long denominator;

        public Fraction() {
        }

        public Fraction(long n, long d) {
                setFraction(n, d);
        }

        public void setNumerator(long n) {
                numerator = n;
        }

        public long getNumerator() {
                return numerator;
        }

        public void setDenominator(long d) {
                if (d == 0)
                        denominator = 1;
                else
                        denominator = d;
        }

        public long getDenominator() {
                return denominator;
        }

        public void setFraction(long n, long d) {
                setNumerator(n);
                setDenominator(d);
        }

        public String toString() {
                return numerator + "/" + denominator;
        }

        public Fraction plus(Fraction f) {
                Fraction result = new Fraction();
                result.numerator = this.numerator * f.denominator + this.denominator
                                * f.numerator;
                result.denominator = this.denominator * f.denominator;
                return result;
        }

        public Fraction minus(Fraction f) {
                Fraction result = new Fraction();
                result.numerator = this.numerator * f.denominator - this.denominator
                                * f.numerator;
                result.denominator = this.denominator * f.denominator;
                return result;
        }

        public Fraction multiply(Fraction f) {
                Fraction result = new Fraction();
                result.numerator = this.numerator * f.numerator;
                result.denominator = this.denominator * f.denominator;
                return result;
        }

        public Fraction divide(Fraction f) {
                Fraction result = new Fraction();
                result.numerator = this.numerator * f.denominator;
                result.denominator = this.denominator * f.numerator;
                return result;
        }
}

public class Exec {
        public static void main(String[] args) {
                Fraction f1 = new Fraction(2, 3);
                Fraction f2 = new Fraction(1, 5);
                Fraction f3 = f1.plus(f2);
                System.out.println(f3);
                f3=f1.minus(f2);
                System.out.println(f3);
                f3=f1.multiply(f2);
                System.out.println(f3);
                f3=f1.divide(f2);
                System.out.println(f3);
        }
}

[此贴子已经被作者于2010-12-12 08:30:16编辑过]
共1 条记录, 每页显示 10 条, 页签: [1]

Copyright ©2002 - 2016 课外天地.Net
Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.