- // Nom : Série 16 exercice 3
- // Nom : Facteurs premiers
- // Description : décompose un nombre en facteurs premiers
- // Auteur : Trioy
- // Date : 14.01.03
- //Préconditions : Aucune
- #pragma hdrstop
- # include <iostream.h>
- # include <conio.h>
- # include <iomanip.h>
- # include <math.h>
-
- //---------------------------------------------------------------------------
-
- // un tout grand merci a la série 11 exercice 2
- void main (void)
- {
- //Variables
- int div,nbre, nbrepremier,n;
- bool flagPrem ;
- cout<<"***Petit programme qui decompose un nombre en facteur premier****"<< endl <<endl ;
- nbre = 0 ;
- nbrepremier = 0 ;
- flagPrem = true ;
- do
- {
- cout<<" Veuillez saisir un entier a decomposer > 1 " ;
- cin >>nbre;
- }
- while(nbre<=1);
-
- if (nbre % 2 == 0)
- {
- nbrepremier = 1 ;
- cout << endl <<endl <<" 2 est un facteur premier de "<< nbre <<endl <<endl;
- }
- for (div=3 ; div<=nbre/2 ; div=div+2)
- {
- if (nbre % div == 0)
- {
- flagPrem = true ;
- if (div > 3)
- {
- n = 3 ;
- while(n * n <= div && flagPrem)
- {
- if (div % n == 0)
- flagPrem = false;
- n = n + 2 ;
- }
- }
-
-
- if (flagPrem)
- {
- nbrepremier = nbrepremier + 1 ;
- cout << endl << " " << div << " est un facteur premier de " << nbre << endl<< endl;
- }
- }
- }
-
-
- cout <<endl << "le nombre "<<nbre <<" a "<<nbrepremier<<" de facteur(s) premier(s)"<< endl<< endl;
- cout <<endl <<endl<< "Appuyer sur une touche pour quitter ";
- getch();
- }
- //---------------------------------------------------------------------------
-
// Nom : Série 16 exercice 3
// Nom : Facteurs premiers
// Description : décompose un nombre en facteurs premiers
// Auteur : Trioy
// Date : 14.01.03
//Préconditions : Aucune
#pragma hdrstop
# include <iostream.h>
# include <conio.h>
# include <iomanip.h>
# include <math.h>
//---------------------------------------------------------------------------
// un tout grand merci a la série 11 exercice 2
void main (void)
{
//Variables
int div,nbre, nbrepremier,n;
bool flagPrem ;
cout<<"***Petit programme qui decompose un nombre en facteur premier****"<< endl <<endl ;
nbre = 0 ;
nbrepremier = 0 ;
flagPrem = true ;
do
{
cout<<" Veuillez saisir un entier a decomposer > 1 " ;
cin >>nbre;
}
while(nbre<=1);
if (nbre % 2 == 0)
{
nbrepremier = 1 ;
cout << endl <<endl <<" 2 est un facteur premier de "<< nbre <<endl <<endl;
}
for (div=3 ; div<=nbre/2 ; div=div+2)
{
if (nbre % div == 0)
{
flagPrem = true ;
if (div > 3)
{
n = 3 ;
while(n * n <= div && flagPrem)
{
if (div % n == 0)
flagPrem = false;
n = n + 2 ;
}
}
if (flagPrem)
{
nbrepremier = nbrepremier + 1 ;
cout << endl << " " << div << " est un facteur premier de " << nbre << endl<< endl;
}
}
}
cout <<endl << "le nombre "<<nbre <<" a "<<nbrepremier<<" de facteur(s) premier(s)"<< endl<< endl;
cout <<endl <<endl<< "Appuyer sur une touche pour quitter ";
getch();
}
//---------------------------------------------------------------------------