Не понимаю в чем дело, даже перебором вводил однозначные нечетные числа, все компилируется, а решения не проходит
package com.javarush.task.jdk13.task04.task0427;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
Строка - описание
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(reader.readLine());
boolean b = (a%2)==0;
if (a>=2 && a < 10 && b){
System.out.println("четное однозначное число");
}
else if (a>=1 && a<10 && !b){
System.out.println("нечетное однозначное число");
}
else if ( a>=10 && a<100 && b){
System.out.println("четное двухзначное число");
}
else if (a>10 && a<100 && !b){
System.out.println("нечетное двухзначное число");
}
else if (a>99 && a<1000 && b){
System.out.println("четное трехзначное число");
}
else if (a>100 && a<1000&&!b){
System.out.println("нечетное трехзначное число");
}
}
}