コード例 #1
0
        static void Main(string[] args)
        {
            try
            {
                RationalNumber    number1    = new RationalNumber(-147, 8);
                RationalNumber    number2    = new RationalNumber(4, 16);
                RationalNumber    number3    = new RationalNumber(2, 4);
                RationalNumber    number4    = new RationalNumber(-18, 4);
                RationalNumber    number5    = RationalNumber.ConvertToRationalNum("0,25");
                RationalNumber    number6    = RationalNumber.ConvertToRationalNum("-5/7");
                RationalNumber    number7    = RationalNumber.ConvertToRationalNum("-5,00");
                RationalNumber [] NumberList = new RationalNumber[] { number1, number2, number3, number4, number5, number6, number7 };

                ServiceClass.PrintLine("Math Operations:");
                Console.WriteLine($"({number1})+({number2})={number1+number2}");
                Console.WriteLine($"({number2})-({number5})={number2 - number5}");
                Console.WriteLine($"({number3})*({number4})={number3*number4}");
                Console.WriteLine($"({number1})/({number2})={number1/number2}\n");

                ServiceClass.PrintLine("Comparison operations:");
                Console.WriteLine($"({number1})=({number2})-->{number1==number2}");
                Console.WriteLine($"({number5})=({number4})-->{number5 == number4}");
                Console.WriteLine($"({number5})<({number6})-->{number5<number6}");
                Console.WriteLine($"({number3})>({number5})-->{number3 > number5}\n");

                ServiceClass.PrintLine("Casting Operaions:");
                int    Inumber = number4;
                double Dnumber = number1;
                Console.WriteLine(Inumber);
                Console.WriteLine(Dnumber + "\n");

                ServiceClass.PrintLine("IComparable:");
                ServiceClass.PrintArray(NumberList);
                Console.WriteLine();
                Array.Sort(NumberList);
                ServiceClass.PrintArray(NumberList);
                Console.WriteLine("\n");

                ServiceClass.PrintLine("Equal:");
                Console.WriteLine($"({number1}) Equals ({number2})--->{number1.Equals(number2)}");
                Console.WriteLine($"({number3}) Equals ({number5})--->{number3.Equals(number5)}\n");

                ServiceClass.PrintLine($"Different string formats of ({number4}):");
                Console.WriteLine(number4.ToString("reduced fraction") + "\n");
                Console.WriteLine(number4.ToString("mixed fraction") + "\n");
                Console.WriteLine(number4.ToString("with fractions") + "\n");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.TargetSite);
                Console.WriteLine(ex.Message);
            }
        }
コード例 #2
0
        static void Main(string[] args)
        {
            RationalNumber n1 = new RationalNumber(1, 2);
            RationalNumber n2 = new RationalNumber(3, 4);

            RationalNumber n = n1 + n2;

            Console.WriteLine($"{n1} + {n2} = " + n);

            n = n1 - n2;
            Console.WriteLine($"{n1} - {n2} = " + n.ToString("."));

            n = n1 * n2;
            Console.WriteLine($"{n1} * {n2} = " + n);

            n = n1 / n2;
            Console.WriteLine($"{n1} / {n2} = " + n);

            Console.WriteLine($"{n1} > {n2} " + (n1 > n2));
            Console.WriteLine($"{n1} < {n2} " + (n1 < n2));
            Console.WriteLine($"{n1} == {n2} " + (n1 == n2));
            Console.WriteLine($"{n1} != {n2} " + (n1 != n2));

            Console.WriteLine("parse -1.3 " + RationalNumber.Parse("-1.3"));
            Console.WriteLine("parse -1/3 " + RationalNumber.Parse("-1/3"));

            n.Reduce();
            Console.WriteLine("reduce 4/6 " + n);
            Console.WriteLine($"(int){n} " + (int)n);
            Console.WriteLine($"(double){n} " + (double)n);
            Console.ReadKey();
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: Ex7ARZ/C-
        static void Main(string[] args)
        {
            RationalNumber num1 = new RationalNumber(2, 3);
            RationalNumber num2 = new RationalNumber(3, 4);
            RationalNumber num3 = num1 + num2;

            Console.WriteLine(num3.N);
            Console.WriteLine(num3.M);
            Console.WriteLine(num3.ToString());

            var a = (double)num1;
            var b = (int)num1;

            Console.WriteLine($"{a};{b}");


            RationalNumber[] nums = new  RationalNumber[] { num1, num2, num3 };
            Array.Sort(nums);
            foreach (RationalNumber p in nums)
            {
                Console.WriteLine(p.ToString());
            }


            const string   s  = "1,25";
            RationalNumber ss = RationalNumber.Parse(s);

            //RationalNumber ss = (RationalNumber)s;
            Console.WriteLine(ss.N);
            Console.WriteLine(ss.M);
            Console.WriteLine(ss.ToString());
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: dotMSP/ISP-Labs
        static void Main()
        {
            int    input1, input2, input3, input4;
            string input5;

            Console.WriteLine("Numerator 1: ");
            while (!int.TryParse(Console.ReadLine(), out input1))
            {
                Console.WriteLine("Incorrect input, retry");
            }
            Console.WriteLine("Denominator 1: ");
            while (!int.TryParse(Console.ReadLine(), out input2) || input2 < 0)
            {
                Console.WriteLine("Incorrect input, retry");
            }
            Console.WriteLine("Numerator 2: ");
            while (!int.TryParse(Console.ReadLine(), out input3))
            {
                Console.WriteLine("Incorrect input, retry");
            }
            Console.WriteLine("Denominator 2: ");
            while (!int.TryParse(Console.ReadLine(), out input4) || input4 < 0)
            {
                Console.WriteLine("Incorrect input, retry");
            }
            RationalNumber a = new RationalNumber(input1, input2);
            RationalNumber b = new RationalNumber(input3, input4);
            RationalNumber n = a + b;

            Console.WriteLine("{a} + {b} = " + n);
            n = a - b;
            Console.WriteLine("{a} - {b} = " + n.ToString("."));
            n = a * b;
            Console.WriteLine("{a} * {b} = " + n);
            n = a / b;
            Console.WriteLine("{a} / {b} = " + n);
            Console.WriteLine("{a} > {b} - " + (a > b));
            Console.WriteLine("{a} < {b} - " + (a < b));
            Console.WriteLine("{a} == {b} - " + (a == b));
            Console.WriteLine("{a} != {b} - " + (a != b));
            Console.WriteLine("Enter a decimal to parse: ");
            input5 = Console.ReadLine();
            Console.WriteLine("Parse: " + RationalNumber.Parse(input5));
            n.Reduce();
            Console.WriteLine("Reduction: " + n);
            Console.WriteLine("{n} to int: " + (int)n);
            Console.WriteLine("{n} to double: " + (double)n);
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: dburackov/CSharpLabs
        static void Main(string[] args)
        {
            RationalNumber a1   = new RationalNumber("0.(3)");
            RationalNumber b1   = new RationalNumber("1/3");
            RationalNumber res1 = a1 + b1;

            Console.WriteLine(res1);
            Console.WriteLine(a1);
            Console.WriteLine(b1);
            Console.WriteLine(a1.ToString());
            Console.WriteLine(b1.ToString());

            Console.WriteLine();

            Console.WriteLine(a1.ToStirng("{0:C}"));
            Console.WriteLine(a1.ToStirng("{0:f4}"));
            Console.WriteLine(a1.ToStirng("{0:P1}"));

            Console.WriteLine();

            RationalNumber a2   = new RationalNumber("0.654(32)");
            RationalNumber b2   = new RationalNumber("-36.987");
            RationalNumber res2 = a2 - b2;

            Console.WriteLine(res2);
            Console.WriteLine(a2);
            Console.WriteLine(b2);
            Console.WriteLine(a2.ToString());
            Console.WriteLine(b2.ToString());

            RationalNumber res3 = a2 * b2;

            Console.WriteLine(res3);

            RationalNumber res4 = a2 / b2;

            Console.WriteLine(res4);

            double d = a1;
            int    i = (int)a1;

            Console.WriteLine(d);
            Console.WriteLine(i);
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: volhayakauleva/7lab
        static void Main(string[] args)
        {
            RationalNumber rationalNumber1 = new RationalNumber(1, 4);
            RationalNumber rationalNumber2 = new RationalNumber(Console.ReadLine());

            rationalNumber1.Print();
            Console.WriteLine(rationalNumber2.ToString());
            int    intValue    = rationalNumber1;
            double doubleValue = (double)rationalNumber2;

            Console.WriteLine("Целая часть первого числа(int): " + intValue);
            Console.WriteLine("Целое часть второго числа(double): " + doubleValue);
            Console.WriteLine((rationalNumber1 + rationalNumber2).ToString());
            Console.WriteLine((rationalNumber1 - rationalNumber2).ToString());
            Console.WriteLine((rationalNumber1 * rationalNumber2).ToString());
            Console.WriteLine((rationalNumber1 / rationalNumber2).ToString());
            Console.WriteLine(rationalNumber1 < rationalNumber2);
            Console.WriteLine(rationalNumber1 > rationalNumber2);
            Console.WriteLine(rationalNumber1 == rationalNumber2);

            Console.ReadKey();
        }
コード例 #7
0
        static void Main(string[] args)
        {
            long           a  = 12;
            long           b  = 20;
            long           c  = -7;
            long           d  = 15;
            RationalNumber r1 = new RationalNumber(a, b);
            RationalNumber r2 = new RationalNumber(c, d);

            //математические операции
            Console.WriteLine("ПЕРЕКРЫТИЕ МАТЕМАТИЧЕСКИХ ОПЕРАЦИЙ\n--------------------------------");
            Console.WriteLine($"Сумма дробей:\n{r1.ToString()} + ({r2.ToString()}) = " +
                              $"{(r1 + r2).ToString()}");
            Console.WriteLine($"Сумма дроби и числа:\n{r1.ToString()} + 3 = {(r1 + 3).ToString()}");
            Console.WriteLine($"Сумма числа и дроби:\n2 + ({r2.ToString()}) = {(2 + r2).ToString()}");
            Console.WriteLine($"Разность дробей:\n{r1.ToString()} - ({r2.ToString()}) = " +
                              $"{(r1 - r2).ToString()}");
            Console.WriteLine($"Разность дроби и числа:\n{r1.ToString()} - 3 = {(r1 - 3).ToString()}");
            Console.WriteLine($"Разность числа и дроби:\n2 - ({r2.ToString()}) = {(2 - r2).ToString()}");
            Console.WriteLine($"Произведение дробей:\n{r1.ToString()} * ({r2.ToString()}) =" +
                              $" {(r1 * r2).ToString()}");
            Console.WriteLine($"Произведение дроби и числа:\n{r1.ToString()} * 3 = {(r1 * 3).ToString()}");
            Console.WriteLine($"Произведение числа и дроби:\n2 * {r2.ToString()} = {(2 * r2).ToString()}");
            try
            {
                Console.WriteLine($"Деление дробей:\n{r1.ToString()} / ({r2.ToString()}) =" +
                                  $" {(r1 / r2).ToString()}");
                Console.WriteLine($"Деление дроби на число:\n{r1.ToString()} / 3 = {(r1 / 3).ToString()}");
                Console.WriteLine($"Деление числа на дробь:\n2 / {r2.ToString()} = {(2 / r2).ToString()}");
            }
            catch (DivideByZeroException)
            {
                Console.WriteLine("ОШИБКА! Деление на ноль");
            }
            Console.WriteLine($"Противоположная дробь:\n{r1.ToString()} -> {(-r1).ToString()}");
            Console.WriteLine($"Инкремент:\n++({r1.ToString()}) -> {(++r1).ToString()}");
            Console.WriteLine($"Декремент:\n--({r1.ToString()}) -> {(--r1).ToString()}");

            //операции сравнения
            Console.WriteLine("\nПЕРЕКРЫТИЕ ОПЕРАЦИЙ СРАВНЕНИЯ\n--------------------------------");
            Console.WriteLine($"Сравнение дробей(==,!=):\n{r1.ToString()} {EqualZn(r1, r1)} {r1.ToString()}");
            Console.WriteLine($"{r1.ToString()} {EqualZn(r1, r2)} {r2.ToString()}");
            Console.WriteLine($"Сравнение дробей(>,<,>=,<=):\n{r1.ToString()} {Znak(r1, r1)} {r1.ToString()}");
            Console.WriteLine($"{r2.ToString()} {Znak(r2, r1)} {r1.ToString()}");
            Console.WriteLine($"Сравнение дроби с числом(==,!=):\n{r1.ToString()} {EqualZn(r1, -3)} -3");
            Console.WriteLine($"Сравнение дроби с числом(>,<,>=,<=):\n{r1.ToString()} {Znak(r1, 5)} 5");

            // явные и неявные операторы преобразования
            RationalNumber r3 = new RationalNumber(-4, 3);

            Console.WriteLine("\nПРЕОБРАЗОВАНИЕ ТИПОВ\n--------------------------------");
            Console.WriteLine($"В int {r3.ToString()} -> {(int)r3}");
            Console.WriteLine($"В long {r3.ToString()} -> {(long)r3}");
            Console.WriteLine($"В double {r3.ToString()} -> {(double)r3}");
            Console.WriteLine($"В decimal {r3.ToString()} -> {(decimal)r3}");
            r3 = 25;
            Console.WriteLine($"Из int 25 -> {r3}");
            r3 = 154L;
            Console.WriteLine($"Из long 154 -> {r3}");
            r3 = 2.5;
            Console.WriteLine($"Из double 2.5 -> {r3}");
            r3 = 0.2225m;
            Console.WriteLine($"Из decimal 0.2225 -> {r3}");

            //представление в виде строки в различных форматах
            Console.WriteLine("\nПРЕДСТАВЛЕНИЕ ДРОБИ В ВИДЕ СТРОКИ\n-----------------------------------");
            Console.WriteLine("1 вариант: " + r1.DifferentStrings('.'));
            Console.WriteLine("2 вариант: " + r1.DifferentStrings(','));
            Console.WriteLine("3 вариант: " + r1.DifferentStrings('/'));

            // получение объекта класса по строковому представлению из разных форматов
            Console.WriteLine("\nПОЛУЧЕНИЕ ДРОБИ ПО СТРОКОВОМУ ПРЕДСТАВЛЕНИЮ" +
                              "\n--------------------------------------------");
            do
            {
                r3 = RationalNumber.TakeFromStrings();
                r3.ReducedFraction();
                Console.WriteLine($"\nВаше число, преобразованное в дробь: {r3.ToString()}");
                Console.WriteLine("\nХотите повторить ввод?(нет - 0, да - любая клавиша)");
            } while (Console.ReadLine() != "0");
        }