voila, normalement ce programme est censé décomposer des nombres en produit de facteurs premiers,
mon probléme est qu´il marche pas !
. .. mais le hic c´est qu´en rajoutant
printf("");
au plein milieu du code, comme ça, et ben il marche ! ! et si je l´enleve, il remarche plus ( il se compile bien mais le programme patine peu aprés son lancement) alors s´il vous plait j´aimerai simplement savoir pourquoi ça fait ça ! ! merci
- include < stdio.h>
int main(void)
{
int nombre;
nombre = demanderNombreADecomposer();
algoDeDecomposition(nombre);
return 0;
}
int demanderNombreADecomposer(void)
{
int nombreDemande;
printf("Entrez le nombre a decomposer en produit de facteurs premier : " );
scanf("%d",&);
return nombreDemande;
}
int algoDeDecomposition(int nombreRecu)
{
int nbpremier=2,nombreDivise=nombreRecu,puissance=0;
float mod=0;
while(nombreDivise!=1)
{
puissance=0;
mod = nombreDivise%nbpremier;
while(mod==0)
{
nombreDivise=nombreDivise/nbpremier;
puissance++;
mod = nombreDivise%nbpremier;
}
if(!puissance==0)
{
if(nombreDivise!=1){printf("%d^%d*",nbpremier,puis
sance);}
if(nombreDivise==1){printf("%d^%d",nbpremier,puiss
ance);}
}
printf(""); // < ---- c´est ICI ! !!!!!
nbpremier = calculerNombrePremierSuivant(nbpremier);
}
return 0;
}
int calculerNombrePremierSuivant(int previousnb)
{
int nextnb,div,nbdiv;
float mod;
nextnb = previousnb;
while(nbdiv!=2)
{
nextnb++;
nbdiv = 0;
for(div=1;div!=nextnb+1;div++)
{
mod = nextnb%div;
if(mod==0)
{
nbdiv++;
}
}
}
return nextnb;
}