/*
Положительные и отрицательные числа
*/
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
int count1 = 0;
int count2 = 0;
for (int i=0; i<3; i++){
if (Integer.parseInt(r.readLine()) > 0)
count1++;
else if (Integer.parseInt(r.readLine()) < 0)
count2++;//напишите тут ваш код//напишите тут ваш код
}
System.out.println("количество отрицательных чисел: " + count2);
System.out.println("количество положительных чисел: " + count1);
}
}
Подскажите, как работает цикл for. Если, к примеру, ввожу 1 2 3,
то правильно всё считает. А если ввожу -1 -2 -3, то приходится вводит дальше -4 -5 -6.
И только тогда цикл заканчивается, И пишет " 0 положительных"
"3 отрицательных".
Где я не понимаю логику цикла? Благодарю.
Koluber
17 уровень
Не понимаю как работает цикл.
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia VolkovaJava Developer в DXCMaster
15 декабря 2019, 14:44полезный
Каждый вызов команды readLine считывает новую строку. Если if не сработал, то в else у тебя будет считана новая строка - все ещё на той же итерации цикла
+1
Koluber
15 декабря 2019, 15:18
Благодарю. Если можно, ещё вопрос. У меня просто цикл for синтаксически не правильно оформлен, или он сюда не подходит вообще?
0
Ksenia VolkovaJava Developer в DXCMaster
15 декабря 2019, 15:29решение
Цикл тут вообще ни при чем, проблема в считывании строки.
У тебя получается, что в условии if и else if проверяются разные строки, а нужно проверять одну и ту же.
+2
Koluber
15 декабря 2019, 15:37
Понял. Ура решил. Благодарю.
0