![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 1 Всего: 91 |
У меня есть такой цикл:
Т.е. я перебираю все возможные значения от 0 до 4294967295. Как мне получить какой процент этой операции завершен, чтобы вывести в консоль. Пытался использовать такую формулу: (i/0xFFFFFFFF)*100 Пытался использоваться типы float, double, long. Скорее всего проблема в размере, т.е. нужно правильно выбрать тип, чтобы при таком раскладе это все грамотно вычислялось: (2863311530/4294967295)*100=66,6 А я получаю все время отрицательные значения после 49%. |
|||
|
||||
djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 4 Всего: 39 |
-------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 6 Всего: 26 |
SABROG, ты уверен что тебе нужная такая точность для отображения процентов?)
Добавлено через 49 секунд > 66,6 для 1 знака после запятой такие большие числа не нужны |
|||
|
||||
SABROG |
|
||||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 1 Всего: 91 |
Всё, спасибо. Разобрался. Ошибка у меня тут:
У меня было int. А эта штука меняет прогресс каждые 99 млн:
Но я сделал иначе, ведь цифра может быть любая:
Т.е. буду менять каждые 5% Это сообщение отредактировал(а) SABROG - 23.12.2009, 21:56 |
||||||
|
|||||||
djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 4 Всего: 39 |
>Так, насчет этого я понял, надо unsigned int, вместо int:
Правильно. А это
Просто чтобы не захламлять выводом терминал, который станет не успевать все распечатывать, и программа будет работать в сто тыщ раз медленней. Добавлено через 6 минут и 12 секунд На самом деле для подобного "замедления" вывода правильно использовать какой-нибудь таймер, чтобы распечатывать например раз в секунду. -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |