public static void div(double a, double b){
System.out.println(b/a);
}
Почему если в данном методе первым числом указать -10.0, а вторым 0, то получится ноль, что логично, но если их поменять местами, то каким то чудом получается бесконечность? Математика гулять убежала или прикол java? Можем я совсем тугодум в математике конечно, но это первая задачка, которая чуть подогрела мой стул.Qvernick
10 уровень
Кто объяснит?
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ярик Ярик
14 сентября 2023, 04:12
обрати внимание что в методе div b/a. Возможно ошибка в передаче аргументов. Может у тебя получается 0.0/-100.0, а должно быть -100.0/0.0
0
Алексей Михайлов
8 мая 2023, 20:17
если быть точным уровень 8 лекция 1
из ур4 лекция 10 первая ссылка
устройство вещественных чисел
0
Алексей Михайлов
8 мая 2023, 20:15
ты в лекциях по доп материалам проходтшься?
С числами с плавающей запятой (float и double) есть определённая особенность.
Их невозможно представить точно в двоичной системе исчисления поэтому они всегда приблизительные.
И в какой то лекции как раз объяснялось как их правильно сравнивать и почему у тебя получается бесконечность при делении на вещественый ноль(0.0).
причём есть положительная и отрицательная бесконечность и есть
ещё один тип NAN - что означает not a
number (не число)
0