Метка «большие числа»

Посвящается новичкам, которые недоумевают, почему значение в переменной в какой-то момент уходит в минус

Пример кода

public class Main {

static int IWantMore;

public static void main(String[] args) {

    while (true) {
        IWantMore++;
        System.out.println(IWantMore);
        if (IWantMore == 0) break;
    }
}

}

С каждым новом заходом он прибавляет к IWantMore. Казалось бы, что цикл не остановиться, так как к моменту первой проверки if -ом значение будет 1, но это не так…
Читать полностью »

Однажды, пролистывая популярный Q&A по математике (math.stackexchange.com), я обнаружил вопрос про расчет мультиномиальных коэффициентов и он меня заинтересовал. На заметку, для тех, кто не знает что это такое, существует статья в википедии. Итак, нужно вычислить следующее выражение:

Методы вычисления мультиномиальных коэффициентов

Казалось, зачем на хабре выкладывать решение такой простой задачи? Ответ заключается в том, что самый простой наивный способ, заключающийся в перемножении факториала суммы с последующим делением его на произведение факториалов, не подойдет из-за того, что промежуточные вычисления выйдут за разрядную сетку типа uint и даже ulong, хотя результат может оказаться в пределах значений этих типов. Мне понравилась эта задача, и я сразу же сел за ее решение и придумал три способа. Остальные два способа я позаимствовал из других ответов. Итак, статья будет об описании и сравнении всех реализованных мною методов на C# под .NET.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js