Advertisement
Guest User

Números Perfeitos

a guest
Sep 24th, 2016
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function numeros_perfeitos()
  2. {
  3.     limite=1000000;
  4.  
  5.     console.log("\n\nNúmero perfeito é um número natural cuja soma de seus divisores\n"+
  6.                 "(excluído o próprio número) coincide com o número.\n\n"+
  7.                 "Estes são os números perfeitos até %d.\n\n:",limite);
  8.  
  9.     for(var i=2;i<=limite;i++) { // declara, incrementa e define um limite
  10.         if(EhPerfeito(i)){
  11.             console.log(i);
  12.         }
  13.     }
  14.  
  15.     return 0;
  16. }
  17.  
  18.  
  19. function EhPerfeito(numero) {
  20.    
  21.     var soma=1;             //todo número é divisível por 1
  22.     var j=2;               
  23.    
  24.     while( j <= numero/2 )
  25.     {
  26.         if(EhDivisor(j,numero)){
  27.             soma+=j;
  28.         }
  29.         j++;
  30.     }
  31.  
  32.     return soma==numero;
  33.  
  34. }
  35.  
  36.  
  37. function EhDivisor(divisor,dividendo) {
  38.     return dividendo % divisor == 0;
  39. }
  40.  
  41.  
  42. numeros_perfeitos(); // As funções apenas foram declaradas, é necessário chamar
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement