S0
Corrigé TD N°3 Qa
TANT QUE (Q <> 0) Faire
Exercice N°2 :
S S+(Q MOD 10)^3
ALGORITHME SommeEntier Q Q DIV 10
VAR FIN TQ
P,S,i,N,x :Entier SI (S=a)ALORS
DEBUT ECRIRE (a,"est cubique")
REPETER SINON
ECRIRE("Donner Le nombre de valeurs") ECRIRE (a,"n'est pas cubique")
LIRE(N) FIN SI
JUSQU’A (N>0) FIN
Exercice N°5:
S 0,P 1 ALGORITHME cubique
POUR i de 1 à N FAIRE
VAR
REPETER v1,v2,s,a,Q:entier
ECRIRE ("Donnez un entier ") DEBUT
LIRE(x) REPETER
JUSQU’A(x <> 0) ECRIRE ("donner un 1er entier")
S S+x LIRE(V1)
P P*x JUSQU’A(v1>=0)
FIN POUR REPETER
ECRIRE ("La somme des ", N ," entiers est : ",S,"Le produit ECRIRE ("donner un 2ème entier")
est ",P) LIRE(v2)
FIN JUSQU’A(v2>v1)
Ecrire("les valeurs cubiques sont :")
Exercice N°3 : POUR a de v1 à v2 FAIRE
ALGORITHME Factorielle S0, Q a
VAR TANQUE (Q<>0)faire
N,Fact, i :entier SS+(Q MOD 10)^3)
DEBUT QQ DIV 10
REPETER FIN TQ
Si(S=a) Alors
ECRIRE("Donner une entier") Ecrire(a)
LIRE(N) Fin Si
JUSQU’A (N>=0) FIN POUR
Fact 1 FIN
POUR i de 1 à N FAIRE
Fact Fact * i Exercice N°6:
FIN POUR ALGORITHME Moy_Etud
ECRIRE (N,"!=",Fact) CONST
FIN Coef1=0,4
Coef2=0,6
Exercice N°4 :
VAR
/*Remarque : les nombres cubiques sont : 153, 370, 371 et 407*/ MoyE,S,devoir,examen :réel
ALGORITHME cubique i : entier
VAR DEBUT
S,a,Q:entier S 0
DEBUT POUR i de 1 à 10 FAIRE
repeter REPETER
ECRIRE ("donner un entier") ECRIRE("Donner Note de devoir Num ",i)
LIRE(a)
LIRE(devoir)
Jusqu’à(a>=0)
1 2
JUSQU’A (devoir >=0 ET devoir<=20) FIN SI
REPETER SI (MoyE > MoyMax) ALORS
ECRIRE("Donner Note examen Num ",i) MoyMax MoyE
LIRE(examen) FIN SI
JUSQU’A (examen >=0 ET examen<=20) SI (MoyE < MoyMin) ALORS
S S+(Coef1*devoir +Coef2*examen) MoyMin MoyE
FIN POUR FIN SI
MoyE S/10 FIN POUR
ECRIRE ("La Moyenne est ",MoyE) ECRIRE("La moyenne de la classe est ", Sclasse/N)
FIN ECRIRE("La plus grande moyenne est ", MoyMax)
ECRIRE("La plus petite moyenne est ", MoyMin)
ECRIRE("Le nombre d’etudiants qui ont reussi ", NbEtud)
Exercice N°7:
ALGORITHME Moy_Classe FIN
CONST Exercice N°8:
Coef1=0,4
Algorithme Conversion binaire
Coef2=0,6
VAR
VAR
nbrDec, nbrBin,puiss,reste,Q : entier
MoyE,S,devoir,examen :réel
DEBUT
Sclasse,MoyMax, MoyMin:réel
i,j,N,NbEtud : entier nbrBin 0, puiss0
//N : nb d’etudiant, NbEtud : nb etudiant dont moy>=10 Repeter
//i : compteur des etudiants, j : compteur des matières ECRIRE ("Entrez un nombre entier positif non nul : ")
DEBUT LIRE(nbrDec)
REPETER Jusqu’à (nbrDec>0)
ECRIRE("Donner Le nombre d’étudiants ") Q nbrDec
LIRE(N) TANT QUE (Q<>0) FAIRE
JUSQU’A (N >0) nbrBin nbrBin +( Q MOD 2)* (10^puiss)
NbEtud 0 puiss puiss+1
Sclasse 0 Q Q DIV 2
MoyMax 0 FIN TANT QUE
MoyMin 20 ECRIRE (nbrDec ,"est en binaire = ", nbrBin)
POUR i de 1 à N FAIRE //boucle des etudiants FIN
S 0 Exercice N°9:
POUR j de 1 à 10 FAIRE //boucle des matieres
Solution1 :
REPETER
ECRIRE("Donner Note de devoir Num ",j) ALGORITHME Premier
LIRE(devoir) VAR
JUSQU’A (devoir >=0 ET devoir<=20) i, N: entier
DEBUT
REPETER
ECRIRE ("Donnez un nombre :")
ECRIRE("Donner Note examen Num ",j) LIRE(N)
LIRE(examen) Nb 0
JUSQU’A (examen >=0 ET examen<=20) POUR i de 2 à N DIV2 FAIRE
S S+(Coef1*devoir +Coef2*examen) SI(N MOD i = 0) ALORS
FIN POUR Nb Nb+1
MoyE S/10 FIN SI
ECRIRE("La moyenne de l’étudiant Num ",i," est ", MoyE) FIN SI
Sclasse Sclasse+MoyE SI(Nb=0)ALORS
SI (MoyE>=10) ALORS ECRIRE (N,"est un nombre premier")
SINON
NbEtud NbEtud +1
ECRIRE (N,"n’est pas un nombre premier ")
3 4
Exercice N°11:
FIN SI
FIN ALGORITHME DIVMOD
VAR
Solution2 : R,Q,N,P: entier
DEBUT
ALGORITHME Premier
VAR REPETER
i, N: entier ECRIRE ("donner un 1er entier"), LIRE(N)
premier: logique JUSQU’A(N>0)
DEBUT REPETER
ECRIRE ("Donnez un nombre :"), LIRE(N) ECRIRE ("donner un 2ème entier"), LIRE(P)
premier vrai, i 2 JUSQU’A(P>0 et P<N)
TANT QUE((i <= N DIV 2) ET premier = vrai) FAIRE R N
SI(N MOD i = 0) ALORS Q 0
Premier faux TANT QUE(R>=P)
FIN SI R R-P
i i+1 Q Q+1
FIN TQ FIN TQ
SI(premier=vrai) ALORS ECRIRE("Le résultat de la division de
ECRIRE (N,"est un nombre premier") ",N,"par ",P,"donne le quotient Q=",Q,"le reste R=",R)
SINON FIN
ECRIRE (N,"n’est pas un nombre premier ")
FIN SI
FIN
Exercice N°10:
ALGORITHME IntervalPremier
VAR
i, N,v1,v2: entier
premier: logique
DEBUT
REPETER
ECRIRE ("donner un 1er entier")
LIRE(V1)
JUSQU’A(v1>0)
REPETER
ECRIRE ("donner un 2ème entier")
LIRE(v2)
JUSQU’A(v2>v1)
POUR N de v1 à v2 FAIRE
premier vrai
i 2
TANT QUE((i <= N DIV 2) ET premier = vrai) FAIRE
SI(N MOD i=0) ALORS
Premier faux
FIN SI
i i+1
FIN TQ
SI(premier=vrai) ALORS
ECRIRE (N)
FIN SI
FIN POUR
FIN
5 6