Programmation en c#

Karlosbriat Messages postés 4 Statut Membre -  
Karlosbriat Messages postés 4 Statut Membre -
Bonjour,
J'ai un projet à faire en programmation et je n'arrive pas à le compléter. Tout d'abord il faut que je réussisse à décomposer un nombre donnée en ses facteurs premier. J'ai deja réussi à trouver le nombre de facteur premier que le nombre a, mais je n'arrive pas a trouver les facteurs en tant que tel. Mon premier bout de code est :
int NbFacteurPremier(int[] facteur, int entier) {
int d = 3;
int i = 0;

while (entier % 2 == 0) {
facteur[i++] = 2;
entier = entier / 2;
}
while (d * d <= entier)
if (entier % d == 0) {
facteur[i++] = d;
entier = entier / d;
} else
d = d + 2;
if (entier > 1)
facteur[i++] = entier;
return i;
J'aimerais avoir l'autre bout de code me permettant de remplir le tableau facteur par ses facteurs. Cependant, mon professeur veut que nous utilision des boucles et non les fonction préfaites par microsoft qui nous permettrait facilement de trouver la solution -_-.
Je n'arrive pas non plus a créer un losange de nombre entier avec une boucle.
Merci beaucoup



3 réponses

hiba.mzoughi Messages postés 11 Statut Membre
 
slt , voila un support de cour qui va t'aider et contient un chapitre sur les tableau :
https://fr.wikibooks.org/wiki/Programmation_C_sharp/Les_tableaux
0
Karlosbriat Messages postés 4 Statut Membre
 
Merci beaucoup, je vais essayer de voir si je peux faire le programme
0
hiba.mzoughi Messages postés 11 Statut Membre
 
ok , bon courage .
0
Karlosbriat Messages postés 4 Statut Membre
 
Mais j'ai besoin de faire une boucle qui fait comme: est ce que le nombre est divisible par 2 si oui alors on enregistre le premier facteur si non alors on passe au prochain nombre premier.
0
hiba.mzoughi Messages postés 11 Statut Membre
 
ok
if ( nbre % 2 == 0 ) then
k = nbre / 2 ; // k contient le premier facteur divisible par 2
else
nbre ++ ;

je pense c'est comme ça ?
0
Karlosbriat Messages postés 4 Statut Membre
 
Je pense que c'est plus compliqué que sa, car il faut après passé au facteur 3 et 5 jusqu'à ce que le plus petit facteur premier soit le chiffre lui-même.
0