コード例 #1
0
ファイル: Program.cs プロジェクト: coreyj/WhatAreClasses
        public static void FractionTest2()
        {
            Console.WriteLine("--------------------TEST 2---------------------");

            Console.WriteLine("----------Using Assignment----------");
            Fraction f1 = new Fraction()
            {
                Numerator = 2,
                Denominator = 5
            };

            Fraction f2 = f1;

            f2.Numerator = 4; // f1 is now equal to 4/5
            Console.WriteLine("f1 = " + f1);
            Console.WriteLine("f2 = " + f2);

            Console.WriteLine("----------Using Copy Constructor----------");
            Fraction f3 = new Fraction(f1);

            f1.Set(2, 5);
            f3.Set(4, 5);
            Console.WriteLine("f1 = " + f1);
            Console.WriteLine("f3 = " + f3);


        }
コード例 #2
0
ファイル: Program.cs プロジェクト: coreyj/WhatAreClasses
        static void FractionTest1()
        {
            Console.WriteLine("--------------------TEST 1--------------------");
            var f1 = new Fraction
            {
                Numerator = 1,
                Denominator = 3
            };

            var f2 = new Fraction
            {
                Numerator = 3,
                Denominator = 7
            };

            var f3 = new Fraction
            {
                Numerator = 4,
                Denominator = 8
            };

            // Which version do you prefer?
            var answer = f1.Add(2);
            Console.WriteLine(answer);
            answer = f1 + 2;
            Console.WriteLine(answer);

            Console.WriteLine(f1 + " + 2 = " + (f1 + 2));
            Console.WriteLine(f1 + " + " + f2 + " = " + (f1 + f2));
            Console.WriteLine(f2 + " - " + f1 + " = " + (f2 - f1));
            Console.WriteLine(f1 + " - " + f2 + " = " + (f1 - f2));
            Console.WriteLine(f1 + " * " + f2 + " = " + (f1 * f2));
            Console.WriteLine(f1 + " / " + f2 + " = " + (f1 / f2));
            Console.WriteLine(f2 + " = " + f2.Simplified);
            Console.WriteLine(f3 + " = " + f3.Simplified);
            Console.WriteLine(f1 + "'s reciprocal is " + f1.Reciprocal());
            Console.WriteLine(f2 + "'s reciprocal is " + f2.Reciprocal());
            Console.WriteLine(f3 + "'s reciprocal is " + f3.Reciprocal());
            Console.WriteLine(f1 + " = " + f1.Evaluate());
            Console.WriteLine(f2 + " = " + f2.Evaluate());
            Console.WriteLine(f3 + " = " + f3.Evaluate());
        }
コード例 #3
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public static Fraction operator /(Fraction frac1, Fraction frac2)
        {
            var f = new Fraction
            {
                Numerator = frac1.Numerator * frac2.Denominator,
                Denominator = frac1.Denominator * frac2.Numerator
            };

            return f;
        }
コード例 #4
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public static Fraction operator -(Fraction frac1, Fraction frac2)
        {
            var f = new Fraction
            {
                Numerator = (frac1.Numerator * frac2.Denominator) - (frac2.Numerator * frac1.Denominator),
                Denominator = frac1.Denominator * frac2.Denominator
            };

            return f.Simplified;
        }
コード例 #5
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public static Fraction operator /(Fraction frac, int num)
        {
            var f = new Fraction
            {
                Numerator = frac.Numerator,
                Denominator = frac.Denominator * num
            };

            return f;
        }
コード例 #6
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public static Fraction operator -(Fraction frac, int num)
        {
            var f = new Fraction
            {
                Numerator = frac.Numerator - (num * frac.Denominator),
                Denominator = frac.Denominator
            };

            return f.Simplified;
        }
コード例 #7
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public Fraction Add(Fraction frac)
        {
            var f = new Fraction
            {
                Numerator = (this.Numerator * frac.Denominator) + (frac.Numerator * this.Denominator),
                Denominator = this.Denominator * frac.Denominator
            };

            return f.Simplified;
        }
コード例 #8
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public Fraction Add(int num)
        {
            var f = new Fraction
            {
                Numerator = this.Numerator + (num * this.Denominator),
                Denominator = this.Denominator
            };

            return f.Simplified;
        }
コード例 #9
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
        public Fraction Reciprocal()
        {
            var f = new Fraction
            {
                Numerator = this.Denominator,
                Denominator = this.Numerator
            };

            return f;
        }
コード例 #10
0
ファイル: Fraction.cs プロジェクト: coreyj/WhatAreClasses
 public Fraction(Fraction f)
 {
     this.Numerator = f.Numerator;
     this.Denominator = f.Denominator;
     inSimplifestForm = false;
 }