|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.01.2013, 17:17 | #1 |
Пользователь
Регистрация: 03.12.2010
Сообщений: 12
|
Перебор дробных значений от 0 до 100.
Привет всем.
Как в с++ перебрать дробных значений от 0 до 100 с промежутком в 0.01(т.е. 0,00 0,01 0,02 ... 99,98 99,99 100,00). Я пробовал так: Код:
Пожалуйста подскажите как сделать чтобы получать точные значения, т.е. 0.1 |
03.01.2013, 17:34 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Имхо, точные Вы не получите.
Число получается из суммы чисел кратных 2, т.е. 1/2, 1/4, 1/8, 1/16, т.е. точно представить 1/10 нельзя.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
03.01.2013, 17:36 | #3 |
Пользователь
Регистрация: 21.05.2012
Сообщений: 88
|
Точных значений получить не удастся, так как в двоичной системе 0,01 - бесконечная периодическая дробь. В памяти хранится приближенное значение. Можно сделать цикл от 0 до 10000, а в теле цикла использовать значение, уменьшенное в 100 раз. Можно использовать вывод числа в указываемом формате.
Ну и вообще, такая точность - это все равно что измерять длину экватора Земли с точностью до сантиметра. |
03.01.2013, 17:40 | #4 |
Пользователь
Регистрация: 03.12.2010
Сообщений: 12
|
А возможно сделать как-то так: прибавлять 0,001(чтобы отсечь 0.0999999) и выводить до 2 знаков после запятой?
Последний раз редактировалось phenix; 03.01.2013 в 17:45. |
03.01.2013, 17:48 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Кстати, у меня в CodeBlocks (gcc) выводится без этих "кривых" окончаний.
Если только для вывода, то попробуйте printf("%.2lf ",i);
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
03.01.2013, 18:03 | #6 |
Пользователь
Регистрация: 03.12.2010
Сообщений: 12
|
Большое спасибо
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перебор всех доступных значений! | AquaKlaster | Общие вопросы Delphi | 40 | 02.03.2015 12:27 |
Перебор значений (DevC++) | InquisitorAles | Помощь студентам | 5 | 21.11.2010 23:26 |
Перебор значений таблицы | Domain | Microsoft Office Excel | 2 | 05.10.2010 05:33 |
Перебор значений для поиска | RailOS | Microsoft Office Excel | 5 | 17.06.2010 16:16 |
Перебор значений | genf | Microsoft Office Excel | 0 | 18.12.2009 10:56 |