static void Main(string[] args) { //// Lab 3 test: Rational number = new Rational(4, 5); Rational number2 = new Rational(16, 20); Rational number3 = new Rational(5); Console.WriteLine("numbe1: {0}, number2: {1} , number3: {2}", number.ToString(), number2.ToString(), number3.ToString()); number2.Reduce(); Console.WriteLine("reduced number2: " + number2.ToString()); number.Mul(number); Console.WriteLine("number1 * number2: " + number.Mul(number).ToString()); Console.WriteLine("Is equal? " + number.Equals(number2)); Console.WriteLine("Is number equals to 7? " + number.Equals(7)); Console.WriteLine("number1 + number2: " + number.Add(number2).ToString()); //Lab appendix test: Console.WriteLine("operator + : number+number2= " + (number + number2).ToString()); Console.WriteLine("operator * : number*number2= " + (number * number2).ToString()); Console.WriteLine("operator / : number/number2= " + (number / number2).ToString()); Console.WriteLine("operator - : number-number2= " + (number - number2).ToString()); Console.WriteLine("(double) casting : (double)(number2)= " + ((double)(number2)).ToString()); Console.WriteLine("casting : (Rational)number3= " + ((Rational)(number3)).ToString()); Console.Read(); }/*********************/
public static void Main()//testing the rational struct { Rational rat1 = new Rational(3, 4); Rational rat2 = new Rational(5, 6); Rational rat3 = new Rational(6, 7); Rational rat4 = new Rational(5, 6); Rational rat5 = new Rational(5); Console.WriteLine(rat1.ToString()); Console.WriteLine(rat2.ToString()); Console.WriteLine(rat3.ToString()); Console.WriteLine(rat5.ToString()); Console.WriteLine("{0},{1},{2},{3}\n", rat1.GetAsDouble, rat2.GetAsDouble, rat3.GetAsDouble, rat5.GetAsDouble); Rational newRat = rat1.Add(rat2); Console.WriteLine(newRat.ToString()); newRat.Reduce(); Console.WriteLine("rational number after reduction {0}", newRat.ToString()); Rational newRat2 = rat2.Mul(rat3); Console.WriteLine(newRat2.ToString()); newRat2.Reduce(); Console.WriteLine("rational number after reduction {0}", newRat2.ToString()); if (rat2.Equals(rat4)) { Console.WriteLine("the numbers are equal"); } else { Console.WriteLine("not equal"); } }
// Returns per-row errors public static string[] GetErrors(Tempered[] ts, Subgroup subgroup) { if (ts == null) { return(null); } string[] errors = new string[ts.Length]; Rational[] indep = new Rational[ts.Length]; // independent intervals int indepSize = 0; for (int i = 0; i < ts.Length; ++i) { Rational r = ts[i].rational; string error = null; if (r.IsDefault()) { error = "Invalid rational"; } else if (r.Equals(Rational.One)) { error = "1/1 can't be tempered"; } else if (!subgroup.IsInRange(r)) { error = "Out of JI range"; } else { if (indepSize > 0) { var m = new Vectors.Matrix(indep, -1, indepSize, makeDiagonal: true); var coords = m.FindRationalCoordinates(r); if (coords != null) { error = ""; for (int j = 0; j < coords.Length; ++j) { if (coords[j].sign != 0) { error += String.Format(" * {0}^{1}", indep[j].FormatFraction(), coords[j].FormatFraction()); } } if (error.Length != 0) { error = "Dependend: " + error.Substring(2); } } } indep[indepSize++] = r; } errors[i] = error; } return(errors); }
static void Main(string[] args) { Rational first = new Rational(); Rational second = new Rational(); first.Numerator = 2; first.Denominator = 4; second.Numerator = 4; second.Denominator = 8; Console.WriteLine("the numbers are:"); Console.WriteLine(first.ToString()); Console.WriteLine(second.ToString()); Console.WriteLine(); Console.WriteLine("the decimal value is:"); Console.WriteLine(first.Decimalvalue); Console.WriteLine(second.Decimalvalue); Console.WriteLine(); Console.WriteLine("the reduced rationals are:"); Console.WriteLine(first.ReduceRational().ToString()); Console.WriteLine(second.ReduceRational().ToString()); Console.WriteLine(); Console.WriteLine("the added rationals are:"); Console.WriteLine(first.AddRational(second).ToString()); Console.WriteLine(); Console.WriteLine("the Multiply of the rationals are:"); Console.WriteLine(first.MulRational(second).ToString()); Console.WriteLine(); Console.WriteLine("are the two rational equal"); Console.WriteLine(first.Equals(second)); Console.WriteLine(); Console.WriteLine("addition"); Rational addition = first + second; Console.WriteLine(addition.ToString()); Console.WriteLine(); Console.WriteLine("subtruct"); Rational subtruct = first - second; Console.WriteLine(subtruct.ToString()); Console.WriteLine(); Console.WriteLine("devide"); Rational devide = first / second; Console.WriteLine(devide.ToString()); Console.WriteLine(); Console.WriteLine("multiply"); Rational multiply = first * second; Console.WriteLine(multiply.ToString()); Console.ReadLine(); }
public EqualDivision(int stepCount, Rational basis) { _stepCount = stepCount; _stepCents = basis.ToCents() / stepCount; if (_stepCents == 12 && basis.Equals(Rational.Two)) { _noteNames = "C C# D D# E F F# G G# A A# B B#".Split(' '); } }
static void Main(string[] args) { Rational ra1 = new Rational(5, 10); Rational ra2 = new Rational(20, 40); Console.WriteLine("Creating ra1 = 5/10 and ra2=20/40"); Console.WriteLine(""); ra1.reduce(); Console.WriteLine("ra1 after reduce is: numinator: " + ra1.Numerator + " denom: " + ra1.Denominator); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Result of ra1.Equals(ra2) = " + ra1.Equals(ra2)); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("creating Rational ra3 = ra1 + ra2 :"); Rational ra3 = Rational.Add(ra1, ra2); Console.WriteLine("Result: ra3 = " + ra3); Console.WriteLine(); Console.WriteLine("creating Rational ra4 = ra1 * ra2 :"); Rational ra4 = Rational.Mul(ra1, ra2); Console.WriteLine(); Console.WriteLine("result: " + ra4); Console.WriteLine(); Console.WriteLine("ra1: " + ra1 + " ra2: " + ra2 + " ra3: " + ra3 + " ra4: " + ra4); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Creating ra5 = 20/41"); Rational ra5 = new Rational(20, 41); Console.WriteLine("ra1 == ra5 is : " + ra1.Equals(ra5)); }
static void Main(string[] args) { Rational a = new Rational(2, 4); Rational b = new Rational(3, 6); Rational c = Rational.Add(a, b); Rational d = Rational.Mul(a, b); Console.WriteLine("a = " + a + ", value: " + a.Value); Console.WriteLine("b = " + b + ", value: " + b.Value); Console.WriteLine("a + b = " + c + ", value: " + c.Value); Console.WriteLine("a * b = " + d + ", value: " + d.Value); Console.WriteLine("a == b? " + a.Equals(b).ToString()); }
static void Main(string[] args) { Rational r1 = new Rational(1, 2); Rational r2 = new Rational(1, 2); Rational r3; Console.WriteLine(r1 + r2); Console.WriteLine(r1 - r2); Console.WriteLine(r1 * r2); Console.WriteLine(r1 / r2); Console.WriteLine(r1.Equals(r2)); Console.WriteLine((double)r1); Console.WriteLine(r1.ToDouble); r3 = (Rational)55; }
static void Main(string[] args) { Rational r1 = new Rational(7, 8); Rational r2 = new Rational(5, 10); // add and mult Rational r3 = Rational.Add(r1, r2); Rational r4 = Rational.Mul(r1, r2); Console.WriteLine(r1 + " + " + r2 + " = " + r3); Console.WriteLine(r1 + " * " + r2 + " = " + r4); // reduce Console.Write(r1 + " = "); r1.Reduce(); Console.WriteLine(r1); Console.Write(r2 + " = "); r2.Reduce(); Console.WriteLine(r2); Console.Write(r3 + " = "); r3.Reduce(); Console.WriteLine(r3); Console.Write(r4 + " = "); r4.Reduce(); Console.WriteLine(r4); // equlas if (r3.Equals(r4)) { Console.WriteLine(r3 + "=" + r4); } else { Console.WriteLine(r3 + "!=" + r4); } r1 = new Rational(7, 8); r2 = new Rational(5, 10); if (Rational.Mul(r1, r2).Equals(r4)) { Console.WriteLine(Rational.Mul(r1, r2) + " = " + r4); } else { Console.WriteLine(Rational.Mul(r1, r2) + " != " + r4); } }
static void Main(string[] args) { Rational r1 = new Rational(48, 64); Rational r2 = new Rational(72, 48); r1.Reduce(); Rational r3 = r1 + r2; Rational r4 = new Rational(6, 8); Rational r5 = r4 - r1; Rational r6 = r4 / r1; Rational r7 = (Rational)8; double d1 = (double)r1; Console.WriteLine(r1.ToString()); Console.WriteLine(r3.ToString()); Console.WriteLine(r5.ToString()); Console.WriteLine(r6.ToString()); Console.WriteLine(r7.ToString()); Console.WriteLine(d1); Console.WriteLine(r4.Equals(r1).ToString()); }
public static int[] FindCoordinates(Rational[] basis, Rational vector, int vectorLength) { int basisSize = basis.Length; // get prime powers int[][] b = new int[basisSize][]; for (int i = 0; i < basisSize; ++i) { b[i] = basis[i].GetPrimePowers(); } int[] v = vector.GetPrimePowers(); // Matrix matrix = new Matrix(b, v, vectorLength); int[] coordinates = matrix.FindCoordinates(); #if DEBUG // check result if (coordinates != null) { Rational r = Rational.One; for (int i = 0; i < coordinates.Length; ++i) { r *= basis[i].Power(coordinates[i]); } if (!r.Equals(vector)) { throw new Exception( String.Format("FindCoordinates failed: {0} != {1}", r, vector) ); } } #endif return(coordinates); }
static void Main(string[] args) { try { Rational rationalA = new Rational(4, 8); Rational rationalB = new Rational(1, 3); Console.WriteLine(" rationalA Value : {0}", rationalA); Console.WriteLine(" rationalB Value : {0}", rationalB); Console.WriteLine(" The sum of rationalA and rationalB is : {0}", rationalA + rationalB); Console.WriteLine(" The result of multiplying rationalA and rationalB is : {0}", rationalA * rationalB); Console.WriteLine(" The result after subtract rationalB from rationalA is : {0}", rationalA - rationalB); Console.WriteLine(" The result after Divide rationalA by rationalB is : {0}", rationalA / rationalB); rationalA.Reduce(); Console.WriteLine(" rationalA Value after reduce : {0}", rationalA); Console.WriteLine(" Is rationalA and rationalB are Equals: {0}", rationalA.Equals(rationalB)); } catch (ArgumentException e) { Console.WriteLine(e.Message); } }
public static void Main()//testing the rational struct { Rational rat1 = new Rational(3, 4); Rational rat2 = new Rational(5, 6); Rational rat3 = new Rational(6, 7); Rational rat4 = new Rational(5, 6); Console.WriteLine(rat1.ToString()); Console.WriteLine(rat2.ToString()); Console.WriteLine(rat3.ToString()); Rational rat5 = rat1 + rat2; Rational rat6 = rat2 * rat3; Rational rat7 = rat3 / rat4; Rational rat8 = rat4 - rat1; Console.WriteLine(rat5.ToString()); Console.WriteLine(rat6.ToString()); Console.WriteLine(rat7.ToString()); Console.WriteLine(rat8.ToString()); Rational rat9 = new Rational(2, 4); Rational rat10 = new Rational(1, 2); if (rat9.Equals(rat10)) { Console.WriteLine("the numbers are equal"); } else { Console.WriteLine("the numbers are not equal"); } Console.WriteLine("{0},{1},{2},{3}\n", rat1.GetAsDouble, rat2.GetAsDouble, rat3.GetAsDouble, rat5.GetAsDouble); }
public bool Equals(SomeInterval other) { return(rational.Equals(other.rational) && cents == other.cents); //!!! compare cents with threshold? }