public void FractionTestTwo()
        {
            FractionHelpers.GetFraction(new long[] { 4, 3, 2 }).Should().Be((30, 7));

            // on the way to 0.234 (117/ 500) we should get to 11/47
            FractionHelpers.GetContinuedFractionSequence(117, 500).Should().Contain((11, 47));
        }
        public void FractionTests()
        {
            FractionHelpers.GetContinuedFractionCoeffs(415, 93).Should().BeEquivalentTo(new[] { 4, 2, 6, 7 });
            FractionHelpers.GetContinuedFractionCoeffs(31, 13).Should().BeEquivalentTo(new[] { 2, 2, 1, 1, 2 });
            FractionHelpers.GetContinuedFractionCoeffs(1536, 2048).Should().BeEquivalentTo(new[] { 0, 1, 3 });

            FractionHelpers.GetContinuedFractionCoeffs(117, 500).Should().BeEquivalentTo(new[] { 0, 4, 3, 1, 1, 1, 10 });
        }
Esempio n. 3
0
        public void Subtract_GivenTwoFractions_ReturnsTheDifference(Fraction f1, Fraction f2, Fraction expected)
        {
            // Arrange & Act
            var sum = FractionHelpers.Subtract(f1, f2);

            output.WriteLine($"Subtract ({f1}, {f2}) = {sum}");

            // Assert
            Assert.Equal(expected, sum);
        }
Esempio n. 4
0
        public void Add_GivenTwoFractions_ReturnsTheSum(Fraction f1, Fraction f2, Fraction expected)
        {
            // Arrange & Act
            var sum = FractionHelpers.Add(f1, f2);

            output.WriteLine($"Add ({f1}, {f2}) = {sum}");

            // Assert
            Assert.Equal(expected, sum);
        }
Esempio n. 5
0
        public void Abs_GivenNegativeFraction_ReturnsPositiveFraction(Fraction fraction)
        {
            // Arrange & Act
            var result = FractionHelpers.Abs(fraction);

            output.WriteLine($"Abs ({fraction}) = {result}");

            // Assert
            Assert.True(result >= 0);
        }
Esempio n. 6
0
 public static Fraction operator -(Fraction fraction, Fraction other)
 {
     return(FractionHelpers.Subtract(fraction, other));
 }
Esempio n. 7
0
 public static Fraction operator +(Fraction fraction, Fraction other)
 {
     return(FractionHelpers.Add(fraction, other));
 }