Decomposer un nombre en facteurs premiers [tout compilateur]

Description

ce prog donne les facteurs premiers d'un nombre

Source / Exemple :


#include <stdio.h>
#include <math.h>

/*PERMET DE CALCULER UN NOMBRE PREMIER*/
int premier(int nombre)
{
  int  increment;
  int  numero=1;
  int  premier=1;
  int  action;
  while (numero<=nombre)
  {
    premier++;
    action=1;
    for (increment=2 ; increment<=sqrt(premier) ; increment++)
    {
      if ((premier%increment)==0)
      {
        action=0;
        increment=premier;
      }
    }
    if (action==1) numero++;
  }
  return premier;
}

void facteurs(int nombre)
{
  int increment=1;
  int facteur=nombre;

  while (facteur!=1)
  {
    /*VERIFIE SI LE NOMBRE EST DIVISIBLE PAR UN NOMBRE PREMIER*/
    if ( ( facteur % (premier(increment)) ) == 0)
    {
      printf("%d\n",premier(increment));
      facteur=facteur/premier(increment);
      increment=1;
    }
    else increment++;
  }
}

void main()
{
  facteurs(54);
  getch();
}

Conclusion :


voila !

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.