Pages

miércoles, 30 de enero de 2013

Calcular los cinco primeros números perfectos Codigo Fuente en C++

Problema
Diseñar un algoritmo que permita calcular los 5 primeros números perfectos (un número es perfecto, cuando la suma de sus divisores, sin incluirlo al número es exactamente el mismo número). El 6 es un número perfecto por sus divisores son 1,2 y 3.

Codigo Fuente en C++
#include <iostream>
using namespace std;
int main(){
   int p[6];
    int b=0, a,k,i,x;
         for(k=2;k<702;k++){
              a=0;
              for(i=1;i<(k+2);i++){
                  if(k%i==0){
                      a=a+i;
                       if((a-k)==k){
                         p[b]=k;
                         b++;
                        }
                  }
              }
          }
         for(x=0;x<b;x++){
             cout<<p[x]<<" Es un numero perfect0"<<endl;
             }
      return 0;
}

No hay comentarios:

Publicar un comentario