Decomposition d'1 nbre entier
Résolu
tangerino
-
tangerino Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
tangerino Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
si vous me permetez, j'ai 1 qst
comment on peut programmer un prg en c qui décompose un nbre entier:
exemple : 12=1*2*2*3
15=1*3*5
2=1*2
1=1
10=1*2*5
merçi d'avance
si vous me permetez, j'ai 1 qst
comment on peut programmer un prg en c qui décompose un nbre entier:
exemple : 12=1*2*2*3
15=1*3*5
2=1*2
1=1
10=1*2*5
merçi d'avance
A voir également:
- Decomposition d'1 nbre entier
- Comment imprimer un tableau excel en entier - Guide
- Décomposition facteur premier casio graph 35+e ✓ - Forum calculatrices
- Les données fournies dans le fichier à télécharger peuvent être synthétisées par le tableau récapitulatif ci-dessous. dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. il manque 5 valeurs dans le tableau ci-dessous. retrouvez-les dans votre tableau, puis reportez-les arrondies à l’entier le plus proche. ✓ - Forum Excel
- Imprimer un tableau sur une seule page avec Excel - Guide
- Il manque 5 valeurs dans le tableau ci-dessous. retrouvez-les dans votre tableau, puis reportez-les arrondies à l’entier le plus proche. - Guide
2 réponses
je pense qu'il doit exister des programmes pour ca mais autrement tu peux utiliser le fait que dans la decomposition en facteur premier, tous les nb premiers qui apparaissent sont inferieurs ou egal a la racine carre du nombre que tu veux decomposer. ainsi tu prends la racine de ton nombre et tu testes les nb premiers inférieurs. pour avoir l'exposant tu fais egalement des tests.
++
++
Tu dois disposer au préalable une table avec les nombres premiers sinon tu peux en meme temps utiliser l'algorithme d'Eratostène pour avoir les nombres premiers.
(remplir un tableau jusqu'a racine carré du nombre à décomposer)
Disons c le nombre à décomposer
A partir de la table des nombres premiers (liste des diviseurs potentiels), tu testes si les élements de la table est un diviseur de c
supposons que 3 est un diviseur (c=3*c')
c = c/3
on recommence, 3 est-il encore un diviseur du nouveau c ?
...
Ensuite on passe au diviseur suivant: 5
...
on s'arrete lorsque c=1 ou jusqu'au dernier diviseur possible
(tu peux creer un tableau à 2 dimensions, la deuxième dimension donne le degré dans la décomposition
ex: (2,0)(3,2)(5,1)---> 2^0*3^2*5^1
(remplir un tableau jusqu'a racine carré du nombre à décomposer)
Disons c le nombre à décomposer
A partir de la table des nombres premiers (liste des diviseurs potentiels), tu testes si les élements de la table est un diviseur de c
supposons que 3 est un diviseur (c=3*c')
c = c/3
on recommence, 3 est-il encore un diviseur du nouveau c ?
...
Ensuite on passe au diviseur suivant: 5
...
on s'arrete lorsque c=1 ou jusqu'au dernier diviseur possible
(tu peux creer un tableau à 2 dimensions, la deuxième dimension donne le degré dans la décomposition
ex: (2,0)(3,2)(5,1)---> 2^0*3^2*5^1
est ce que vous pouvez plus expliquer?si possible
puis on teste si 2 est diviseur de 3 --> non donc 3 est premier
on insère 3 dans la table
puis on teste si 2 est un diviseur de 4 -->oui donc 4 n'est pas premier
on n'insère pas 4 dans la table
puis on teste si 2 est un diviseur de 5 -->non
3 est un diviseur de 5 -->non
(on fait le teste sur tous les éléments du tableau) -->ici on confirme que 5 est premier
on insère 5 dans la table
... ainsi de suite, notre table contient ainsi que des nombres premiers