• Как перевести biginteger в integer?

    \
    ach, azn, bch, bzn это переменные для записи числителя и знаменателя дроби.

    Зачем писать такой комментарий, если сразу можно переменные назвать нормально?

    System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

    А для кого придуман InvariantCulture и второй аргумент у всяких double.Parse?

    Это что за енам такой интересный?
    И зачем тогда передавать в метод целый TextBox, если от него нужен только Text?
    double value = n_ == 1 ? double.Parse(tf.Text) : double.Parse(ts.Text);


    Вот это вообще что такое?
    Func<BigInteger> eulerGCD = () =>
                    {
                        var m = first;
                        var n = second;
    
                        while (true)
                        {
                            var r = m % n;
                            if (r == 0)
                            {
                                break;
                            }
                            m = n;
                            n = r;
                        }
                        return n;
                    };

    И снова енам вступает в бой:
    if (n_ == 1)
                    {
                        ach = (int)(first & 0xFFF); azn = (int)(second & 0xFFF);
                    }
                    if(n_ == 2)
                    {
                        bch = (int)(first); bzn = (int)(second);
                    }


    Предлагаю для начала разбить этот метод на более-менее самостоятельные части и протестировать их все по отдельности. Тогда найдёшь, в чём дело.

    Разбираться в таком г-коде нет никакого желания.
    Ответ написан
    Комментировать