ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
23 апреля
637090 Топик полностью
SciFi (09.12.2015 17:28, просмотров: 251) ответил PeterD на Как можно посчитать быстро a = (b*c)/(2^64) где unsigned int a; unsigned long int b; const unsigned long int c; Если короче а 32 бита, и b и с 64 бита.
Надо как-то определиться с возможными диапазонами значений аргументов. А то ведь переполнение легко получается. А при некоторых ограничениях диапазонов можно нормироваться сдвигами и не выходить за 64 бита, а это уже умеет любой приличный компилятор (unsigned long long, он же uint64_t).
ส็็็็็็็็็็็็็็็็็็็็็็็็็༼ ຈل͜ຈ༽ส้้้้้้้้้้้้้้้้้้้้้้้