for(int i = 1; i < 10; i++){
System.out.print("8");
}
Как получается "8" 10 раз подряд? Насколько я понимаю, начальное значение i=1, проверяется условие, выполняется инкремент, печатается "8". Затем то же самое происходит с i=2; 3; 4; 5; 6; 7; 8; 9. С i=10 условие не выполняется, выход из цикла. Должно быть напечатано 9 раз "8". Но печатает 10
И с кодом
for(int j = 0; j <= 10; j++){
System.out.println("8");
}
тоже не понятно. Здесь должно быть напечатано 11 строк, а печатает 10. Где я ошибаюсь? Подскажите пожалуйста.
Yaroslav
5 уровень
Объясните пожалуйста
Обсуждается
Комментарии (6)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Islom K
20 июля 2019, 18:52
for(int i = 1; i <= 10; i++){
System.out.print("8");
}
или
for(int i = 0; i < 10; i++){
System.out.print("8");
}
0
Алексей
20 июля 2019, 18:44
Варианта 2:
1. Ты где-то еще вне цикла выводишь 8-ку
2. Считаешь невнимательно
Выводы на консоль выполнения обоих циклов
0
Yaroslav
20 июля 2019, 19:06
Алексей, я считаю нормально, даже пальцы загибаю)))
Вот этот код прошел валидацию
package com.javarush.task.task04.task0438;
/*
Рисуем линии
*/
public class Solution {
public static void main(String[] args) {
for(int i = 1; i < 10; i++){
System.out.print("8");
}
for(int j = 0; j <= 10; j++){
System.out.println("8");
}
}
}
Вот почему я и обратился с вопросом.
0
Алексей
20 июля 2019, 19:26
Объясню тогда на пальцах, раз так проще.
Первый цикл выводит 9 8-к, но не делает перевода строки. Второй цикл выводит 11 8-к, но первая сливается с выводом первого цикла.
0
IceBergMaster
20 июля 2019, 19:29
Вот твой вывод если разделить между циклами
0
Yaroslav
20 июля 2019, 19:36
Спасибо!!! Вот теперь понял в чем дело. А то думал, что загибать пальцы разучился)))
0