Написать функцию преобразования double в decimal (C/C++)

Цена договорная • безналичный расчёт, электронные деньги
14 марта 2018, 13:16 • 1 отклик • 27 просмотров
Написать функцию преобразования числа типа double в формат с десятичной точкой
на входе: double исходное число
на выходе: __int64 десятичное число, int позиция десятичной точки в числе
компилироваться должно в 32 бита на VC 2013 и выше
без использования printf(), только через математические операции и функции

Прототип функции
void double_to_decimal(double Number, __int64 &Decimal, int &DecimalPoint);

Test cases:
0 -> 0, 0
0.3333 -> 3333, 4
1.23456 -> 123456, 5
1234567.0 -> 1234567, 0
1234567.8 -> 12345678, 1
1234567.89 -> 123456789, 2
-1234567.0 -> -1234567, 0
-1234567.8 -> -12345678, 1
-1234567.89 -> -123456789, 2
0.1234567890123 -> 1234567890123, 13