Determine el número más alto y más bajo

Actualmente estoy escribiendo un programa donde el usuario debe ingresar 10 números y luego la salida será el número más alto y el número más bajo. Hay algo mal en mi código pero no pude encontrarlo.

<code>int highest=0, lowest=0, num=0;
Scanner scan = new Scanner(System.in);

for (int i=0; i<10; i++) {
    System.out.print("Enter a number:");
    num = scan.nextInt();
}

if (num > highest) {           
    highest = num;
}         
else if(num < lowest) {             
    lowest = num;
}

System.out.println("Highest number is: " + highest);
System.out.println("Lowest number is: " + lowest);
</code>

Respuestas a la pregunta(4)

Su respuesta a la pregunta