static void Task4() { Fraction fraction1 = new Fraction(7, 4); Fraction fraction2 = new Fraction(2, 5); Console.WriteLine("Первая дробь: " + fraction1.Print()); Console.WriteLine("Вторая дробь: " + fraction2.Print()); Fraction result1 = fraction1.Plus(fraction2); Fraction result2 = fraction1.Minus(fraction2); Fraction result3 = fraction1.Multi(fraction2); Fraction result4 = fraction1.Div(fraction2); Console.WriteLine("Результат сложения дробей: " + result1.Print()); Console.WriteLine("Результат вычитания дробей: " + result2.Print()); Console.WriteLine("Результат умножения дробей: " + result3.Print()); Console.WriteLine("Результат деления дробей: " + result4.Print()); Console.ReadKey(); }
/// <summary> /// *Описать класс дробей — рациональных чисел, являющихся отношением двух целых чисел. Предусмотреть методы сложения, вычитания, умножения и деления дробей. Написать программу, демонстрирующую все разработанные элементы класса. ///* Добавить свойства типа int для доступа к числителю и знаменателю; ///* Добавить свойство типа double только на чтение, чтобы получить десятичную дробь числа; ///** Добавить проверку, чтобы знаменатель не равнялся 0. Выбрасывать исключение ArgumentException("Знаменатель не может быть равен 0"); ///*** Добавить упрощение дробей. /// </summary> static void Task3() { Fraction f1 = new Fraction(3, 7); Fraction f2 = new Fraction(3, 4); Console.WriteLine($"Первая дробь {f1.ToString()}"); Console.WriteLine($"Вторая дробь {f2.ToString()}"); Fraction f3 = f1.Add(f2); Console.WriteLine($"Результат сложения {f3.ToString()}"); f3 = f1.Multi(f2); Console.WriteLine($"Результат уможения в виде десятичной дроби {f3.DecimalFraction:F2}"); f3 = f1.Sub(f2); Console.WriteLine($"Результат вычитания {f3.ToString()}"); f3 = f1.Div(f2); Console.WriteLine($"Результат деления {f3.ToString()}"); f3 = new Fraction(21, 12); Fraction.MakeFractionSimple(f3); Console.WriteLine($"Результат после упрощения {f3.ToString()}"); ///f3 = new Fraction(1, 0); Генерация ошибки про 0 }