public class Main {
public static strictfp void main(String...args) {
int i = 0;
for(double x = 0 ; x != 13.08 ; x += 0.12) {
System.out.println(i++);
System.out.println(x);
}
}
}
Цикл будет выполняться бесконечно. При таком условии в цикле х никогда не будет равен 13.08 из-за погрешности вычислений с плавающей точкой. (Число 0.12 невозможно точно представить в формате double, можно представить лишь приближенное значение 0.11999999... и т.д.). Правильной проверкой условия было бы неравенство: x <=13.08.
Войдите чтобы поставить Нравится
Войдите чтобы прокомментировать