способ получить конкретные целые числа из двойного типа данных - PullRequest
0 голосов
/ 14 мая 2011

C ++

Так что мне нужен способ получить число 7 из двойного 56.279 или любого другого целого числа, и я не могу понять, как это сделать, не зная, каким будет двойник, возвращаемый из моей функции ( поэтому я не могу просто сделать 56.279 - .009).

Моя функция всегда возвращает прошедшие секунды в виде двойного в этой форме: 000.000. У меня также есть только 5 пробелов для печати времени в окне КОНСОЛЬ , поэтому

если число меньше десяти, мне нужно просто напечатать 0,000 секунд, если больше десяти 00,00, если больше шестидесяти секунд (одна минута), затем 0:00, и, наконец, если больше 10 минут, я напечатаю 00: 00 в 5 символьном пространстве. Поэтому мне нужно избавиться от 9 в 56.279, чтобы число соответствовало пространству. Я думаю, мне нужно просто получить каждое число отдельно, за исключением 9, и вставить их в массив символов ...

Есть еще идеи?
Спасибо!

Ответы [ 2 ]

1 голос
/ 14 мая 2011

Чтобы иметь n десятичное число вашего двойного x, вы можете сделать E ((x по модулю x * 10 ^ (n-1)) * 10)

1 голос
/ 14 мая 2011

Вы можете умножить на десять, а затем округлить.

...