Universidad de Costa Rica
Escuela de Ciencias de la Computación e Informática
CI-0202 Principios de informática - II-2013
Profesor Jeisson Hidalgo-Céspedes
Fecha: 14-set-2013. Entrega límite: 24-set-2013 11:55 p.m.

Tarea 02

Su amiga(o) de secundaria le pide ahora ayuda con las matemáticas. Es una tarea muy frecuente tener que encontrar los factores primos que componen un número entero positivo, lo cual es tedioso y propenso a errores para números grandes. Por esto recurre con confianza a usted para que le ayude con un programa de computadora que reciba números enteros y despliegue la factorización única de acuerdo al teorema fundamental de la aritmética.

Otra tarea repetitiva es encontrar ternas pitagóricas para formar triángulos rectángulos. Sería muy conveniente si el programa encuentra las ternas pitagóricas que se pueden formar con el número ingresado. Para simplificar asuma que este número representa la hipotenusa. Una posible interacción con su programa se muestra a continuación.

Factorizacion unica y ternas pitagoricas
Ingrese numeros enteros positivos, 0 para terminar

Numero: 1
1 no es primo ni compuesto

Numero: 2
es primo

Numero: 3
es primo

Numero: 4
2^2

Numero: 5
es primo
(3,4,5)

Numero: 6
2 * 3

Numero: 7
es primo

Numero: 8
2^3

Numero: 9
3^2

Numero: 10
2 * 5
(6,8,10)

Numero: 13
es primo
(5,12,13)

Numero: 25
5^2
(7,24,25), (15,20,25)

Numero: 85
5 * 17
(13,84,85), (36,77,85), (40,75,85), (51,68,85)

Numero: 120
2^3 * 3 * 5
(72,96,120)

Numero: 960
2^6 * 3 * 5
(576,768,960)

Numero: 0 
Ejemplo de ejecución del programa.

Evaluación

  1. [40%] Calcula correctamente los factores primos del número ingresado. Los imprime como potencias a menos que el exponente sea 1. Si el número es primo, imprime una leyenda en lugar de sus factores.
  2. [30%] Encuentra las ternas pitagóricas donde el número ingresado opera como la hipotenusa. Imprime las ternas en formato "(a,b,c)" donde los números están en orden del menor a mayor, es decir, a < b < c. No imprime ternas repetidas, por ejemplo "(a,b,c), (b,a,c)".
  3. [20%] Imprime correctamente multiplicaciones (el símbolo de asterisco) entre factores primos, pero no imprime uno demás al inicio o al final. Separa las ternas pitagóricas por comas, sin dejar una demás al inicio o final del resultado. No imprime espacios, comas o cambios de línea demás si no hay ternas pitagóricas donde el número ingresado opere como hipotenusa.
  4. [10%] Lee números repetitivamente hasta que se ingresa 0 (o un número negativo). No considera el 1 como número primo.

Para presentar su solución, suba el archivo .java que haya creado a Mediación virtual en la asignación con nombre Tarea02.