Пытаюсь разобраться в этом псевдокоде. Предполагается следующее.... Я могу использовать только целые числа без знака и со знаком (или длинные). Деление возвращает действительное число без остатка. MOD возвращает действительное число. Дроби и десятичные числа не обрабатываются.
INT I = 41828;
INT C = 15;
INT D = 0;
D = (I / 65535) * C;
Как бы вы поступили с дробью (или десятичным числом) в этой ситуации? Есть ли способ использовать отрицательное значение для представления остатка?
В этом примере I/65535 должно быть 0,638, однако с ограничениями я получаю 0 с MOD 638. Как я могу умножить на C, чтобы получить правильный ответ?
Надеюсь, это имеет смысл.
MOD здесь на самом деле вернул бы 23707, а не 638. (Надеюсь, я прав :))