como puedo hacer este program en java?

Leer una secuencia de 20 números y almacenar en un vector sus factoriales

como podría sacar el factorial y mostrarlo es la parte que no entiendo por favor ayudaaaaaaaaaaaaaaaaa

si me pueden colaborar se los agradeceria

saludos

Comments

  • Bueno veamos como queda el código:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    import java.io.*;

    class FactorialVector {

    public static void main(String args[])

    {

    final short MAX = 20;

    int c=0; //contador;

    double numeros[] = new double[MAX]; //numeros guardados

    int numeroLeido=0; //numero leido del teclado

    BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in));

    for (c=0;c<MAX;c++)

    {

    System.out.printf("("+(c+1) +"/" +MAX+")Ingrese un numero: ");

    try { numeroLeido = Integer.parseInt(entrada.readLine()); //leemos y tranformamos a entero

    }catch(Exception e) { System.err.println(e); }

    numeros[c]=factorial(numeroLeido); //guardamos el factorial del numero leido

    }

    System.out.printf("Contenido del vector: ");

    for (c=0;c<MAX;c++) //mostramos el vector

    {

    System.out.printf(numeros[c] +"");

    if (c<MAX-1) System.out.printf(" ");

    }

    }

    static double factorial(int numero) //devuelve el factorial de un numero

    {

    if (numero<=1) return 1;

    return numero*factorial(numero-1);

    }

    }

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Podría haber una que otra optimización, pero eso lo vez tu pues a mi me falta experimentar más con el lenguaje ya que recién lo estoy aprendiendo.

Sign In or Register to comment.