public void Run() { MyFrac fraction1 = Fraction(5, 4); MyFrac fraction2 = Fraction(-1, 2); MyFrac fraction3 = Fraction(-5); Console.WriteLine("Expected for double conversion: 1.25"); Console.WriteLine("Actual: " + (double)fraction1); Console.WriteLine("\nExpected for string representation: 5/4"); Console.WriteLine("Actual: " + fraction1); Console.WriteLine("\nExpected for string with Integer part representation: (1+1/4)"); Console.WriteLine("Actual: " + fraction1.ToStringWithIntegerPart()); Console.WriteLine("\nExpected for string with Integer part representation: -5"); Console.WriteLine("Actual: " + fraction3.ToStringWithIntegerPart()); Console.WriteLine("\nExpected for negation: -5/4"); Console.WriteLine("Actual: " + -fraction1); Console.WriteLine("\nExpected for addition: 3/4"); Console.WriteLine("Actual: " + (fraction1 + fraction2)); Console.WriteLine("\nExpected for subtraction: 7/4"); Console.WriteLine("Actual: " + (fraction1 - fraction2)); Console.WriteLine("\nExpected for multiplication: -5/8"); Console.WriteLine("Actual: " + fraction1 * fraction2); Console.WriteLine("\nExpected for division: -5/2"); Console.WriteLine("Actual: " + fraction1 / fraction2); Console.WriteLine("\nExpected for Sum1: 10/11"); Console.WriteLine("Actual: " + CalcSum1(10)); Console.WriteLine("\nExpected for Sum2: 11/20"); Console.WriteLine("Actual: " + CalcSum2(10)); }
public void TestDivZeroFrac() { MyFrac a = new MyFrac(1, 2); MyFrac b = new MyFrac(); Assert.Throws <DivideByZeroException>(() => a.Divide(b)); }
public void TestToStringFrac() { MyFrac a = new MyFrac(1, 2); Assert.Equal("1/2", a.ToString()); MyFrac b = new MyFrac(1, -2); Assert.Equal("-1/2", b.ToString()); }
public void Operation_Substract_MyFrac_With_MyFrac_Difference_Returned() { MyFrac f1 = new MyFrac(3, 2); MyFrac f2 = new MyFrac(7, 3); MyFrac actualResult = f1 - f2; Assert.AreEqual("-5/6", actualResult.ToString()); }
public void Operation_Multiply_MyFrac_By_MyFrac_Product_Returned() { MyFrac f1 = new MyFrac(3, 2); MyFrac f2 = new MyFrac(4, 3); MyFrac actualResult = f1 * f2; Assert.AreEqual("2/1", actualResult.ToString()); }
public void Operation_Divide_MyFrac_By_MyFrac_DivisionResult_Returned() { MyFrac f1 = new MyFrac(3, 2); MyFrac f2 = new MyFrac(2, 5); MyFrac actualResult = f1 / f2; Assert.AreEqual("15/4", actualResult.ToString()); }
public void Operation_Add_MyFrac_To_MyFrac_Sum_Returned() { MyFrac f1 = new MyFrac(3, 2); MyFrac f2 = new MyFrac(6, 3); MyFrac actualResult = f1 + f2; Assert.AreEqual("7/2", actualResult.ToString()); }
public void TestAddFrac() { MyFrac f1 = new MyFrac(1, 2); MyFrac f2 = new MyFrac(3, 4); var sum = f1 + f2; Assert.True(sum == f1.Add(f2)); Assert.True(sum.Num == 5); Assert.True(sum.Denom == 4); }
public void TestMulFrac() { MyFrac f1 = new MyFrac(1, 2); MyFrac f2 = new MyFrac(3, 4); var prod = f1 * f2; Assert.True(prod == f1.Multiply(f2)); Assert.True(prod.Num == 3); Assert.True(prod.Denom == 8); }
public void TestSubFrac() { MyFrac f1 = new MyFrac(1, 2); MyFrac f2 = new MyFrac(3, 4); var diff = f1 - f2; Assert.True(diff == f1.Subtract(f2)); Assert.True(diff.Num == -1); Assert.True(diff.Denom == 4); }
public void TestDivFrac() { MyFrac f1 = new MyFrac(1, 2); MyFrac f2 = new MyFrac(3, -4); var quot = f1 / f2; Assert.True(quot == f1.Divide(f2)); Assert.True(quot.Num == -2); Assert.True(quot.Denom == 3); }
private static void ExecuteFractionOptions(ref MyFrac fraction) { bool executeOptions = true; do { Write("Enter the option: "); switch (ReadLine()) { case "1": WriteLine(MyFrac.ToStringWithIntegerPart(fraction)); break; case "2": WriteLine(MyFrac.GetDoubleValue(fraction)); break; case "3": fraction += GetInputFraction(); WriteLine($"result: {fraction}"); break; case "4": fraction -= GetInputFraction(); WriteLine($"result: {fraction}"); break; case "5": fraction *= GetInputFraction(); WriteLine($"result: {fraction}"); break; case "6": fraction /= GetInputFraction(); WriteLine($"result: {fraction}"); break; case "7": WriteLine(MyFrac.GetRGR113LeftSum(GetInputNumber()).ToString()); break; case "8": WriteLine(MyFrac.GetRGR115LeftSum(GetInputNumber()).ToString()); break; case "9": fraction = GetInputFraction(); break; default: executeOptions = false; break; } } while (executeOptions); }
private static MyFrac CalcSum2(int n) { MyFrac product = Fraction(1); for (int i = 2; i <= n; ++i) { product *= Fraction(1) - Fraction(1, (long)Math.Pow(i, 2)); } return(product); }
private static MyFrac CalcSum1(int n) { MyFrac sum = Fraction(0); for (int i = 1; i <= n; ++i) { sum += Fraction(1, i * (i + 1)); } return(sum); }
public void TestNullFrac() { MyFrac a = new MyFrac(1, 2); Assert.False(a == null); Assert.NotNull(a); Assert.False(((object)a).Equals(null)); MyFrac b = null; Assert.Null(b); Assert.True(b == null); Assert.True(b is null); Assert.Throws <NullReferenceException>(() => b.Equals((object)null)); }
private static void Main(string[] _) { WriteLine("Choose option:"); WriteLine("1. Show MyMatrix class options"); WriteLine("2. Show MyFrac class options"); WriteLine("Enter any other key to exit..."); switch (ReadLine()) { case "1": MyMatrix matrix = GetInputMatrix(); ShowMatrixOptions(); ExecuteMatrixOptions(ref matrix); break; case "2": MyFrac fraction = GetInputFraction(); ShowFractionOptions(); ExecuteFractionOptions(ref fraction); break; } }