Не пойму почему не проходит проверку последний пункт,всё работает,если число 0 или отрицательное то ничего не выводится и соответственно если больше 999
package com.javarush.task.task04.task0427;
/*
Описываем числа
*/
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws Exception {
//напишите тут ваш код
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String x = reader.readLine();
int num1 = Integer.parseInt(x);
int b = x.length();
if(num1<1 || num1>999 || num1==0)System.out.println();
else if(x.length()==1 && (num1 % 2 ==0))System.out.println("четное однозначное число");
else if(x.length()==1 && (num1 % 2>0))System.out.println("нечетное однозначное число");
else if(x.length()==2 && (num1 % 2==0))System.out.println("четное двузначное число");
else if(x.length()==2 && (num1 % 2!=0))System.out.println("нечетное двузначное число");
else if(x.length()==3 && (num1 % 2==0))System.out.println("четное трехзначное число");
else if(x.length()==3 && (num1 % 2!=0))System.out.println("нечетное трехзначное число");
}
}