Ya que hemos dado algunas referencias sobre el uso del "if" y de el "for", ahora le daremos uso en este programa, que lo que hace es calcular el factorial de un numero(el cual sera pedido al usuario con "JOptionPane.showInputDialog"), primero que nada tenemos que saber que es el factorial de un numero natural la definicion es la siguiente:
Para todo número natural n, se llama n factorial o factorial de n al producto de todos los naturales desde 1 hasta n:
n!=1*2*3*4*...*(n-1)*n.hay que recordar que el factorial de 0 es 1.
/** * Archivo: Factorial.java * @author Bello Cerecero * @version 1.0 * @since 29/10/2011 */ import javax.swing.JOptionPane; public class Factorial { public static void main(String[] args) { String valor; valor=JOptionPane.showInputDialog("Introduce un numero:"); int numero = Integer.parseInt(valor); if(numero == 0) System.out.println("1"); else { int factorial=1; for(int i = 1 ; i <= numero;= numero ; i++) factorial = factorial*i; System.out.println(factorial); } } }
En la linea 13 le pedimos al usuario que introduzca el numero al cual se le calculara el factorial, en la linea 14 convertimos el String recibido a tipo int, recordando que el caso de 0 su factorial es 1, en la linea 16 ponemos un if que no evalúa si es 0 en caso de que esto sea cierto imprimirá en consola 1(linea 18), en caso de que no sea cierto (introdujeron un numero diferente de 0) pasara a ejecutar todo lo que esta en las llaves del else (de la linea 20 a la linea 25). Ahora ya dentro del else esta el proceso que se llevara acabo para el calculo del factorial vemos que se declara una la variable factorial de tipo int inicial izada en 1, después se coloco un for que inicia liza la variable i en 0 y se repetirá mientras i sea menor o igual a la variable numero, en cada iteración a la variable se le sumara 1.
dentro del for la única instrucción que se ejecutara es la que se encuentra en la linea 23 que vemos que a la variable factorial se le asignara lo que de el producto de la variable factorial por la variable i, ya que se termine las iteraciones lo unico que se hace es mandar a imprimir la variable factorial.
No hay comentarios.:
Publicar un comentario