Con la tecnología de Blogger.

Iniciación a C, Ejercicio número perfecto.

Hoy vamos a ver un ejercicio en lenguaje de programación C, donde le diremos un número a nuestro programa y el nos dirá si dicho número es perfecto o no.

Un número perfecto es aquel número que sumando todos sus divisores menos el mismo nos da él mismo.

Ejemplo 6  Divisores del 6:  6 + 3 + 2 + 1 = 6


A continuación os pongo mi forma que esta mal pero os puede ayudar por si pensáis lo mismo que pensé yo :-P

#include <stdio.h>
void main (void)
{
   int i=1,num,resultado=0;
   printf("Dame un numero\n");
   scanf("%d", &num);
   while(i<num)
   {
       if(num%i==0)
           resultado+=i;
       i++;
   }
   if (num==resultado)
       printf("El numero %d es perfecto.", num);
   else
       printf("El numero %d no es perfecto.", num);
}

La forma del profesor:

#include <stdio.h>
void main (void)
{
   int i,num,mitad,sumatorio=1; ← como 1 siempre es divisor ya le damos el valor de 1 a la suma.
   printf("Dame un numero\n");
   scanf("%d", &num);
   i=2;
   mitad=num/2;    ← Buscamos solo hasta la mitad ya que matemáticamente de la mitad al final solo es divisible entre 1 o el mismo y en este caso los desechamos.
   while(i<=mitad)
   {
       if(num%i==0)
           sumatorio+=i;
       i++;
   }
   if ((sumatorio==num)&&(num!=1))
       printf("El numero %d es perfecto.", num);
   else
       printf("El numero %d no es perfecto.", num);
}
Share on Google Plus

Sobre Rafa

Soy un apasionado de las nuevas técnologias, Internet, los videojuegos, la cultura japonesa y de USA.
    Blogger Comment
    Facebook Comment

1 comentarios:

  1. no me sirviode nada
    aprende programacion y despues veni a publicar kpo
    de buena onda

    ResponderEliminar

Gracias por comentar ;-)