SoloCodigo
		Programación General => C/C++ => Mensaje iniciado por: lufepava en Jueves 27 de Marzo de 2008, 01:00
		
			
			- 
				Hola tengo el siguiente codigo que pretende calcular el factorial de las posiciones de un arreglo 10 posiciones, es decir de la posición 0 me calcule 0 de 1 me calcule 1, de 2 me calcule 2 de 3 me calcule 3 asi sucesivamente de la posición 10, osea 9 será 362880.  Pero el codigo me presente el siguiente error Not an allowed type. Si alguien me puede ayudar se lo agradecería.
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define TAM 10
void factorial(int n);
void main()
{
   int i;
   long arr1[TAM];
    for(i=0;i<TAM;i++)
        {
      arr1=factorial(i);
        }
   printf("\n El arreglo con el factorial de cada posicion es: \n\n");
   {
    for(i=0;i<TAM;i++)
    printf(" %d",arr1);
   getch();
   }
}
void factorial(int n)
{
   int i;
   long factorial=1;
   if (n>=0)
   {
      for(i=1;i<=n;i++)
      {
      factorial=factorial*i;
      }
   }
}
			 
			
			- 
				void factorial(int n);
long arr1[TAM];
arr1=factorial(i);
Lee esas lineas con atencion, declaras una funcion cuyo valor de retorno es void (nada) y tratas de asignarle el mismo a un elemento de un array de long, evidentemente no eso no funciona. Arregla la funcion factorial.