Devo moltiplicare un numero per una frazione.
Il numero è senza segno a 64 bit.
La frazione è composta da due interi senza segno a 64 bit. Il numeratore è sempre minore o uguale del denominatore.
Normalmente farei:
(n * numeratore) / denominatore
Ma il prodotto tra numeratore e n va quasi sempre in overflow sbagliando il calcolo.
Non posso trasformare i due numeri in double perchè la sua mantissa è di 52 bit e quindi perdo precisione.
Senza dover implementare numeri a 128 bit, per questo specifico calcolo potrei usare qualche trucchetto secondo voi?