Exibe quantos números perfeitos foram digitados
Publicado por summerson de souza goncalves (última atualização em 17/10/2011)
[ Hits: 6.316 ]
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... }
Função que converte números decimais em binários
Gerando uma "number list" de 6 digitos
Retirar ocorrências de uma substring dentro de uma string
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Estou com sede em aprender sobre o nosso querido Linux. (1)
big linux sem audio como resolver (2)
Como faz para dar um update-grub por shell script [RESOLVIDO] (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta