be_a_dancer
@be_a_dancer
Backend/Fullstack Developer

Как сделать счетчик цикла For типа double?

Экзамен.
При подготовке, столкнулся с билетом, где необходимо создать цикл с шагом, выраженным типом double. Как известно всем, вещественный тип при выполнении с ним действий, выдаёт неточный результат. Соответственно, необходимо создать такой алгоритм, который бы выводил корректное количество действий без костылей.
Какой способ, кроме сравнения с эпсилон окрестностью и заранее подсчета количества шагов, можно использовать?
Заранее благодарен.
Неправильный код цикла
for(double i = 0; i <=2; i+=0.1){
System.out.println(i);
}
  • Вопрос задан
  • 1033 просмотра
Решения вопроса 2
@MiiNiPaa
for(int i = 0; i <=20; i+=1){
    double d = i / 10.0;
    System.out.println(d);
}
Ответ написан
Foolleren
@Foolleren
Компас есть, копать не люблю...
ну как минимум надо бы почитать вот это
habrahabr.ru/post/266023
но использовать for и дабл это изврат
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@alexxandr
you'll see in memory only 0xDEADFACE
double max = 20.0;
double current = 0.0;
while (current < max)
{
current += 0.1;
System.out.println(current);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы