Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/04/2015, 16:06
ari_roman09
 
Fecha de Ingreso: abril-2015
Mensajes: 1
Antigüedad: 9 años, 7 meses
Puntos: 0
Mensaje codificacion en ansi c

chicos ayudenme porfa tengo un problema programe esto y no me da ningun encontrar se ejecuta pero al momento que sale para ejecutarse boom se cuelga ayudenme porfa.. en mi programa esto realizando un ejercicio de saber si un numero ingresado es numero perfecto http://es.wikipedia.org/wiki/N%C3%BAmero_perfecto
mi codigo es este les agradeceria mucho por su ayuda....
utilizo dev-c++ 5.2.0.1


Código C:
Ver original
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>
  4. main()
  5. {
  6.     int numero,div,suma=0,t,j,factorial=1,sf=0,i,h,cont=0,k;       
  7.     char n[10],fact[numero],m[10],t1[10];                          
  8.     printf("ingrese numero:");
  9.     scanf("%s",&n);        
  10.     numero=atoi(n);     //convierto entero         
  11.  
  12.     for (i=1;i<=numero-1;i++)          
  13.     {
  14.         if (numero%i==0)        //busco divisores          
  15.         {                                  
  16.             fact[i-1]=i;           
  17.             cont=cont+1;           
  18.             printf("numero divisible de %d es %d", numero,i);
  19.         }
  20.     }
  21.     //funcion  
  22.     for (t=0;t<=cont;t++)
  23.     {                               //tomo los numeros divisibles y los sumo            //2n+1
  24.         m[0]=fact[t];              
  25.         k=atoi(m);                         
  26.         suma+=k;
  27.     }
  28.     if (suma==numero)          
  29.     {
  30.         for (h=0;h<=cont;h++)                  
  31.         {
  32.             t1[0]=fact[h];  //tomo numeros divisibles y convierto a entero         
  33.             k=atoi(t1);
  34.             for (j=1;j<=k;i++)          //hallo factorial                  
  35.             {
  36.                 factorial*=j;              
  37.             }
  38.             sf+=factorial;          //sumo factorial
  39.             factorial=1;
  40.         }
  41.         printf("%d es un numero perfecto\n",numero);
  42.         printf("la suma de los factoriales de los numeros divisores es %d:",sf);
  43.     }
  44.     else
  45.         printf("%d NO ES UN NUMERO PERFECTO\n",numero);
  46.  
  47.     system("PAUSE");
  48.     return 0;
  49. }

Última edición por razpeitia; 08/04/2015 a las 16:24