Exibe quantos números perfeitos foram digitados
Publicado por summerson de souza goncalves (última atualização em 17/10/2011)
[ Hits: 6.517 ]
Script com comentários e fácil de entender.
/*Construa um algoritmo que possa entrar com vários números positivos e imprima quantos números são perfeitos (Um número é perfeito se a soma de seus divisores exceto ele é igual a ele).*/ #include<conio.h> #include<iostream> using namespace std; int main() { int n ,x,somadiv,p(0); system("color F0"); //altera fonte de visualização para fundo branco e letra preta cout<<"Digite um numero ou 0 para sair"<<endl; cin>> n; while(n==1)// se o usuário digitar 1 ele nao faz o calculo e pede para digitar novamente { cout<<"O numero 1 nao e um numero perfeito"; cout<<"\nDigite um numero ou 0 para sair"<<endl; cin>> n; } while(n<0) // se digitar um numero negativo ele avisa { cout<<"\nEste nao e um numero positivo."<<endl; cout<<"\nDigite um numero ou 0 para sair"<<endl; cin>> n; } while(n!=0) { somadiv=0; // não declarar como variável global pois ele volta a zero. for(x=1;x < n ;x++) //faz a divisao por x até ser menor que o n { if(n%x==0) { somadiv+=x; //quando o divisor é igual a zero ele } //pega o divisor e vai somando } if(somadiv==n) //o numero acima é igual ao n entao ele é perfeito { p++; //soma quantidade de vezes que } cout<<"\nDigite um numero ou 0 para sair"<<endl; cin>> n; } cout<<"\nQuantidade de numeros perfeitos digitados: "<<p<<endl; getch(); // poderia colocar cin.get() e retirar a conio.h,só uma brincadeira... }
Teste de desempenho com números primos em C
Como verificar a validade de um CPF
Calcular dia da semana a partir de uma data sugerida
Validar CPF em C++ (esse funciona)
Nenhum coment�rio foi encontrado.
Conciliando ZRAM Swap com Swap em arquivo ou partição
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Ajuda com o Debian 13 - Video hibrido geforce 940 mx Wayland OFF (2)
Problema com impressoras de rede (1)
Rust é o "C da nossa geração"? (10)