Acho que ficou um pouco grande, mas estaria certo assim?:
import java.util.Random;
import java.util.Scanner;
public class JogoAdivinhacao {
public static void main(String[] args) {
Scanner leitor = new Scanner(System.in);
int numeroSorteado = new Random().nextInt(20);
int numeroInformado = 0;
int tentativas = 1;
int maxTentativas = 5;
while (tentativas <= maxTentativas) {
System.out.println("Digite o numero entre 0 e 20");
numeroInformado = leitor.nextInt();
if (numeroInformado == numeroSorteado) {
System.out.println(String.format("""
Parabéns, você acertou na %dª tentativa. O número sorteado foi %d
""", tentativas, numeroSorteado));
break;
} else if (numeroInformado < numeroSorteado) {
System.out.println(String.format("""
O número informado é menor que o número sorteado! Você tem %d tentativas!
""",maxTentativas-tentativas));
tentativas++;
}else {
System.out.println(String.format("""
O número informado é maior que o número sorteado! Você tem %d tentativas!
""",maxTentativas-tentativas));
tentativas++;
}
if (tentativas > maxTentativas){
System.out.println("Todas as tentativas foram frustradas. Quer jogar mais? Execute o jogo novamente. O numero sorteado foi: "+numeroSorteado);
}
}
}
}