Exibe quantos números perfeitos foram digitados
Publicado por summerson de souza goncalves (última atualização em 17/10/2011)
[ Hits: 6.201 ]
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... }
Converçor de Decimal para Binario
Um algoritmo genético para o TSP (Travel Salesman Problem)
Nenhum comentário foi encontrado.
Agora temos uma assistente virtual no fórum!!! (247)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Impressora Canon Ip 1800 (Drivers) 64 bit (3)
iso de sistema 32 bit em atividade (15)
Como transfiro os pokemons do fire red para o emulador mupen64? (1)