public static string performCases(string fractionAString, string fractionBString, string sign)
		{
			FractionClass fractionA = new FractionClass();
			FractionClass fractionB = new FractionClass();
			FractionClass solution = new FractionClass();

			fractionA.setFractionFromString(fractionAString);
			fractionB.setFractionFromString(fractionBString);

			switch (sign)
			{
				case Const.PLUS_SYMBOL_STRING:
					solution = FractionAddition.Add(fractionA, fractionB);
					break;
				case Const.MINUS_SYMBOL_STRING:
					solution = FractionSubstraction.Substract(fractionA, fractionB);
					break;
				case Const.MULTIPLY_SYMBOL_STRING:
					solution = FractionMultiplication.Multiply(fractionA, fractionB);
					break;
				case Const.DIVIDE_SYMBOL_STRING:
					solution = FractionDivision.Divide(fractionA, fractionB);
					break;
			}

			return solution.returnFractionAsString();
		}
		public static FractionClass Multiply(FractionClass a, FractionClass b)
		{
			FractionClass solution = new FractionClass();

			solution.numerator = a.numerator * b.numerator;
			solution.denominator = a.denominator * b.denominator;
			return solution;
		}
		public static string calculateWithNonFractionA(string nonFractionA, string fractionB, string sign)
		{
			FractionClass fractionA = new FractionClass();
			fractionA.convertNumberToFraction(nonFractionA);
			string result = "0";

			result = performCases(fractionA.returnFractionAsString(), fractionB, sign);
			return result;
		}
Example #4
0
		public static FractionClass Divide(FractionClass a, FractionClass b)
		{
			FractionClass solution = new FractionClass();

			solution.numerator = a.numerator * b.denominator;
			solution.denominator = a.denominator * b.numerator;

			return a;

		}
		public static FractionClass Substract(FractionClass a, FractionClass b)
		{
			FractionClass solution = new FractionClass();

			if (a.denominator == b.denominator)
			{
				solution.numerator = a.numerator - b.numerator;
				solution.denominator = a.denominator;
			}
			else
			{
				int LCM = FractionLCM.GetLeastCommonMultiple(a.denominator, b.denominator);
				solution.denominator = LCM;

				solution.numerator = a.numerator * LCM / a.denominator - b.numerator * LCM / b.denominator;
			}
			return solution;

		}