CC10A: Computación I
Solución Ejercicio Nro. 1

Pregunta 1

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
Observación: el programa desplegaba 3, 5, 5. Estos son los factores primos de 75.

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.

Pregunta 2

    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);
    }
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.