Ca ne pollue pas le forum c´est ce à quoi il sert, surtout que le titre est assez explicite.
" pourquoi denom*b.denom; a la place de denom*b ? "
Disont qu´on "est" dans la variable a lorsque se code s´exécute. Donc denom totuseul est le dénominateur de a. On veut le multiplier par le dénominateur de b qui s´appelle b.denom en toute généralité.
Si on avait écrit denom*b alors on multiplierait le dénominateur de a par b en entier (à condition qu´une fonction existe pour ça) ce qui n´est pas ce qu´on veut.
P.S. le forum programmation est près à accueillir tout les réfugié du C++ ...