![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
![]()
Прочитал название темы, самому стало смешно) Извините за такую "информативность".
Есть программа: Код:
На строке x+=0.1 стоит точка остановки. Отладчик выдаёт следующее. 1й шаг: Код:
Код:
работаю в Visual Studio 2008.
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
ну вообще то надо знать про точность вычислений с плавающей запятой.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 31.10.2007
Сообщений: 28
|
![]()
о чем задача собственно, напиши условие, напиши полный свой код или участок, чему равен xmin или xmax? ничего ведь непонятно, по крайней мере лично мне
|
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]() |
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
![]()
Если цикл, то будет лучше xmin + i * dx, а то при добавлении большом количестве сложений ошибка накапливается. В любом случае 0.1 и подобное в двоичной системе обрезается на каком-то знаке после точки.
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
![]()
для Пепел Феникса:
Знать - это очень хорошо, но, к сожалению, не всегда всё знать получается, особенно если только начинаешь что-то осваивать) Если не лень, можешь пояснить? Или ссылку дать где по читать об этом? Я думал такие проблемы могут только при делении возникать.. Для D_bl_M: В принципе, всё что нужно я написал. xmin и xmax в программе инициализируются со значениями -1 и 5 соответственно, и больше не изменяются. Для netrino: Спасибо, попробую. Целочисленные типы мне в данной задаче не слишком удобно использовать, но, если не получится с double, буду извращаться)
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
![]()
Somebody, а i здесь что? Целочисленная переменная?
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
![]()
Всем спасибо. Сначала сделал как предлагал Somebody, потом перевёл всё в double, как советовал netrino. Точности double для моей задачи хватило.
Действительно,
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
FLOAT TO TRING И STRING TO FLOAT!! | MelKiY_bad | C++ Builder | 6 | 07.05.2010 14:31 |
Аналог функции rand() для типа float | Linel | PHP | 1 | 01.06.2009 21:01 |
сортировка чисел типа float | дядя | Общие вопросы C/C++ | 2 | 23.05.2009 12:11 |
Точность типа float | HunterMan | Общие вопросы C/C++ | 6 | 07.02.2009 23:05 |