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 }); }
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); }
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); }
public void Abs_GivenNegativeFraction_ReturnsPositiveFraction(Fraction fraction) { // Arrange & Act var result = FractionHelpers.Abs(fraction); output.WriteLine($"Abs ({fraction}) = {result}"); // Assert Assert.True(result >= 0); }
public static Fraction operator -(Fraction fraction, Fraction other) { return(FractionHelpers.Subtract(fraction, other)); }
public static Fraction operator +(Fraction fraction, Fraction other) { return(FractionHelpers.Add(fraction, other)); }