|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.05.2018, 19:53 | #1 |
Новичок
Джуниор
Регистрация: 21.05.2018
Сообщений: 4
|
Почему выводит разные результаты?
{
// Java double num = 0.0, num1 = 2.0, num2 = 2.1, num3 = 2.3; num = num1 + num2 + num3; System.out.println(num); } { // C++ double num = 0.0, num1 = 2.0, num2 = 2.1, num3 = 2.3; num = num1 + num2 + num3; cout << num << endl; } Почему выводится разные результаты?? Почему Java выводит неправленый результат?? |
21.05.2018, 19:55 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Какие результаты-то?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
21.05.2018, 20:33 | #3 |
Новичок
Джуниор
Регистрация: 21.05.2018
Сообщений: 4
|
В Java: 6.3999999995
В C++: 6.4 |
21.05.2018, 20:46 | #4 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Все ж правильно. Никто не обещал точность double до 10005000 знаков. В С++ так же бывает.
Поэтому например нельзя просто сравнивать вещественные числа (по крайней мере после операций над ними) как a == b и т.п.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
21.05.2018, 20:52 | #5 |
Новичок
Джуниор
Регистрация: 21.05.2018
Сообщений: 4
|
но С++ правильно выдоит ответ, а Java нет. Как можно это исправить ?
|
21.05.2018, 20:58 | #6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,707
|
Код:
|
21.05.2018, 21:06 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Код:
совет с форматированным выводом от p51x лучше. |
21.05.2018, 21:11 | #8 |
Новичок
Джуниор
Регистрация: 21.05.2018
Сообщений: 4
|
Спасибо, хорошо
как это? что такое round? Последний раз редактировалось Alex11223; 21.05.2018 в 21:52. |
21.05.2018, 21:52 | #9 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Округление.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите пожалуйста! СЧЕТЕСЛИМН и фильтр дают разные результаты | Ppaa | Microsoft Office Excel | 2 | 03.08.2015 15:10 |
(с++) float и double. Разные результаты. | Uefa | Помощь студентам | 4 | 20.05.2014 12:50 |
Идентичные функции выдают разные результаты | Cannibal | Помощь студентам | 6 | 21.04.2011 18:29 |
Программа на цикле неверно выводит результаты | nox7 | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 26.09.2010 19:28 |
Разные компиляторы - разные результаты | Кипящий чайник | Общие вопросы C/C++ | 3 | 16.07.2010 14:54 |