Parte a.-
1.- n= 75
2.- i= 2
3.- condición verdadera
4.- condición verdadera
5.- i= 3
3.- condición verdadera
4.- condición falsa
7.-
8.- n= 25
3.- condición verdadera
4.- condición verdadera
5.- i= 4
3.- condición verdadera
4.- condición verdadera
5.- i= 5
3.- condición verdadera
4.- condición falsa
7.-
8.- n= 5
3.- condición verdadera
4.- condición falsa
7.-
8.- n= 1
3.- condición falsa
Parte b.-

Observación: al no poner las llaves, la asignación n= n/i; queda fuera del if, a pesar de que la indentación sugiere que está adentro.
Observación: la dificultad estaba en cómo detener el ciclo, y luego
saber cómo distinguir entre si había terminado por i>=m
o por m%i!=0.
println("Cual es su numero ? ");
int m= readInt();
int i= 2;
while (i<m && m%i!=0)
i= i+1;
if (i==m)
println("El "+m+" es primo.");
else {
println("El "+m+" no es primo.");
println("Es divisible por "+i);
}