Algorithmique

iyia Messages postés 3 Statut Membre -  
ajp55 Messages postés 482 Statut Membre -
salam
comment fair lalgorithme afficher les N premiers entiers impairs dans lordre decroissant
est merci davance
A voir également:

3 réponses

ajp55 Messages postés 482 Statut Membre 23
 
svp, on résout pas les exercices de classe ici. il faut au moins proposé votre approche et on vous aidera à l'améliorer. Merci
1
iyia Messages postés 3 Statut Membre
 
salam voici ma solution

algorithme N premier entier

var i,N:entier

debut

ecrire("donner N");
lire(N);

pour i de (N*2)-1 a 0 pas (-2) faire
ecrire(i);
finpour

merci
0
ajp55 Messages postés 482 Statut Membre 23
 
dans cette exemple, tu prédéfini N a un entier pair et donc tu fais -1 pour obtenir le premier entier impair. CE qui n'ais pas toujours vrai. Voici comment tu devrais procédér,
premièrement, un nombre est premier s'il n'est divisible que par lui et par 1.
deuxièmenent, si le nombre modulo 2 est different de 0, alors il est impair.
voici un exemple

algorithm N premier entier impair
var i,j, N : entier
trouver:booleen
debut
ecrire("donner N")
lire(N)
pour i allant de 0 to N pas 1 faire
/* verifier que i est impair *, si i modulo 2 est different de 0 */
si(i modulo 2 <> 0) alors
/* verifier que i est premier en testant s'il existe un autre diviseur different de i et 1 */
trouver = faux;
j = 2
tant que trouver = faux et j < i)
si i modulo j = 0 alors
trouver = vrai
finsi
j = j + 1;
fintantque
si (trouver = faux) alors
ecrire(i," est premier entier impair")
finsi
finsi
fin
0
iyia Messages postés 3 Statut Membre
 
salam
svp vous me corrige lexercice

algorithme les diviseurs d un entier N
Var
i,N:entier;
Debut
ecrire("donner un nombre");
lire(N);
i:=1;
tantque i >= N/2 faire
Si N mod i =0 alors
ecrire("i");
i:=i+1;
sinon
i:=i+1;
finsi;
fintantque;
finalgorithme;



ALGORITHME afficher le N entier pairs decroissant
Var
N,i:entier;

Debut

ecrire("Donner N");
lire("N");
Si N>0 alors
ecrire("les"N"premiers entiers positives impairs dans l'ordre decroissantsont");
Pour i de ((N*2)-1) a 1 pas (-2) faire
ecrire(i);
finpour;

ecrire("les"N"premiers entiers negatifs impairs dans l'ordre decroissantsont");

Pour i de -1 a -((N*2)-1) pas (-2) faire
ecrire(i);
finpour;

sinon
ecrire("donner un nombre positive");
finsi;
finalgorithme;

merci a l avance
0