Ir ao conteúdo

Posts recomendados

Postado

. Preciso de uma fórmula que gere os 4 primeiros números perfeitos de um número perfeito informado pelo usuário.

 

. Um número perfeito é aquele que é igual à soma dos seus divisores. Ex: 6 = 1+2+3, 28 = 1+2+4+7+14.

 

. Já consegui fazer um algoritmo para verificar se o número é perfeito. Veja:

 

algoritmo "semnome"

var
  n, x, soma :inteiro
inicio
  escreva(" - Informe um número: ")
    leia(n)
    
  para x de 1 ate (n - 1) faca
    se (n % x = 0) então
      soma <- (soma + x)
    fimse
  fimpara
  
  se (soma = n) então
    escreval()
    escreval(" * Este número é perfeito.")
  senao
    escreval()
    escreval(" * Este número é imperfeito.")
  fimse
fimalgoritmo

. O problema é que preciso exibir os 4 primeiros números perfeitos caso o número informado for perfeito. Alguém saberia como fazer isso?

 

Desde já agradeço.

  • Curtir 1
  • Membro VIP
Postado
10 horas atrás, Lucas Da Silva Aleixo disse:

O problema é que preciso exibir os 4 primeiros números perfeitos caso o número informado for perfeito. Alguém saberia como fazer isso?

 

Teoricamente já tem um algoritmo para verificar se um número é perfeito ou não. Daí, você precisa pegar os números do domínio do problema, ou seja, os números naturais (0, 1, 2, 3, 4, 5, 6, 7....), e ir testando um a um... até que encontre 4 números que são perfeitos.

  • Curtir 1
  • 3 anos depois...
Postado

Eu estava tentando resolver esse exercício e consegui porque o seu algoritmo me deu uma ideia. O meu ficou assim:

algoritmo "cap1215ex3"
var n,soma,x,r:inteiro

inicio
// Seção de Comandos

Repita
n<-n+1
soma<-0
 para x de 1 ate (n - 1) faca
 r<-n-(int((n)/(x))*x)  //mod e % não estava funcionando, entao fiz manualmente
    se (r = 0) entao   //r é resto
      soma <- (soma + x)
    fimse
  fimpara
ate soma=n
  escreval(n, " é um número perfeito")

Pra descobrir o próximo número perfeito é só copiar e colar o mesmo algoritmo em seguida, porque o próximo comando dele é n<-n+1, o que significa que ele vai pular o número perfeito já descoberto.

No meu pc eu colei o algoritmo 4 vezes, mas o VisualG só conseguiu descobrir até o 3º número perfeito, depois disso ele parou.

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!