Entrar com um número e imprimir todos os seus divisores

Publicado por summerson de souza goncalves (última atualização em 10/10/2011)

[ Hits: 34.832 ]

Download 7.cpp




Código básico, comentado para tirar dúvidas de comandos de repetição.

  



Esconder código-fonte

/*entrar com um numero e imprimir todos os seus divisores.*/

#include<iostream>
using namespace std;
int main()              // UFA ....
{
   int n,i,divisor,resultado;//poderia ter colocado divisor(0)..dá no mesmo que divisor=0
   divisor=0;
   cout<<"Digite um numero: ";
   cin>> n;
   
   for(i=1;i<=n;i++) // enquanto o contador n for menor ou igual ao numero digitado
   {                // ele repete a operação.  
    divisor+=1 ;    //o divisor é zero, acrescento um para ele ir aumentando de 1 em 1 ,e fazendo o looping até ser igual a n .          
    resultado = n % divisor;//o resultado dos numeros divisiveis é o resto da divisao entre o numero e o divisor
    if(resultado==0)// se o resto da divisao for igual a zero ele imprime os divisores.
    {
     cout<<"divisor de: "<<n<<" e: "<< divisor<<endl;
    }
 } 

  system("pause");
} 

Scripts recomendados

Calendário em C

Retirar ocorrências de uma substring dentro de uma string

Patch para Zsnes 1.51 com GCC>=4.3

Milesegundos em C

Os cincos primeiros termos da séries de fourier


  

Comentários
[1] Comentário enviado por lucasscharf em 10/10/2011 - 16:52h

Brother, é possível provar matematicamente que para obter o divisor de um númer N, é necessário ir até sqrt(N).
Isso reduz um pouco o tempo de execução do programa.

[2] Comentário enviado por summerson em 10/10/2011 - 19:07h

Legal... poste uma nova versão pra gente dar uma olhada...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts