Способ получения правильной суммы: double conv = usd * fixeuro;
Тогда, если вы хотите получить только евро, это int euros = conv;
, а просто евроценты - int eurocents = 100 * (conv - euros);
Или, если хотите, вы можете использовать 100 * fmod(conv, 1.0)
.
fmod(usd,fixeuro)
не имеет никакого очевидного значения.Это то, что у вас остается, когда у вас есть 5 долларов и вы начнете выбрасывать ровно 89 центов за раз, пока у вас не будет меньше 89 центов.89 центов США не соответствуют какой-либо интересной сумме в евро, а центы США не являются евроцентами, поэтому не совсем понятно, что вы получаете от этого.