Exercices corrigées en algorithmique : les outils de base de l'algorithmique


Exercice 1 :

Ecrire un algorithme qui demande les coordonnées de deux points dans le plan, calcule et affiche à l’écran la distance entre ces deux points.
N.B. 
la distance entre deux points A(x1,y1) et  B(x2,y2)    est :    AB= sqrt((x2-x1)^2  + (y2-y1)^2)
on donne la fonction sqrt(x) qui renvoie la racine carrée d’un nombre réel  x .

Correction exercice 1 :

Algorithme  calcul_distance;
Var


      X1,x2,y1,y2,s : réels ;
Debut
            Ecrire(‘entrer la valeur de x1 : ‘) ;
            Lire(x1) ;
            Ecrire(‘’ entrer la valeur de y1 : ‘’) ;
            Lire(y1) ;
Ecrire(‘’ entrer la valeur de x2 : ‘’) ;
            Lire(x2) ;
Ecrire(‘’ entrer la valeur de y2 : ‘’) ;
            Lire(y2) ;
            S <-- sqrt((x2-x1)^2  + (y2-y1)^2) ;
            Ecrire(‘la distance entre A(‘ ,x1,’,’,y1,’) et  B(‘,x2,’,’,y2,’) est :  ‘,s) ;
fin

Exercice 2 :

Elaborer un algorithme permettant de demander les valeurs de trois résistances r1,r2 et r3 et de calculer et afficher leurs résistances équivalente dans les deux cas suivants :
N.B. 
Lorsque ces résistances sont branchées en série :
                                     Rser = r1+r2+r3
Lorsque ces résistances sont branchées en parallèle :
                           Rpar=(r1*r2*r3)/(r1*r2+r1*r3+r2*r3)

Correction exercice 2 :

Algorithme  calcul_resistance;
Var
      r1,r2,r3,Rpar,Rser: réels ;
Debut
                Ecrire(‘entrer la valeur de r1 : ‘) ;
                Lire(r1) ;
                Ecrire(‘ entrer la valeur de r2 : ’) ;
                Lire(r2) ;
Ecrire(‘ entrer la valeur de r3 :  ’) ;
                Lire(r3) ;
                Rser <--  r1+r2+r3;
                Rpar <--  (r1*r2*r3)/(r1*r2+r1*r3+r2*r3) ;
                Ecrire(‘ la résistance équivalente a r1 ,r2 et r3 en série est : ‘,Rser) ;
Ecrire(‘ la résistance équivalente a r1 ,r2 et r3 en parallèle  est : ‘,Rpar) ;
fin

Exercice 3 :

Ecrire un algorithme qui permet de calculer la surface d’un triangle quelconque  dont les cotés  ont une longueur donnée : a,b et c .
N.B. 
           S= sqrt(r*(r-a)*(r-b)*(r-c))      avec :     r =(a+b+c)/2


Correction exercice 3 :

Algorithme  calcul_surface;
Var
      a,b,c,r,s : réels ;
Debut
                Ecrire(‘entrer la longueur du côté a  : ‘) ;
                Lire(a) ;
                Ecrire(‘entrer la longueur du côté b  : ‘) ;
                Lire(b) ;
    Ecrire(‘entrer la longueur du côté c  : ‘) ;
                Lire(c) ;
                r  <--     (a+b+c)/2 ;
                S <--  sqrt(r(r-a)(r-b)(r-c)) ;
                Ecrire(‘la surface du triangle abc est :  ‘,s);
Fin

Exercice 4 :


Dans une école un étudiant passe quatre matières à l’examen :
1ère  matiere écrite   :   coefficient =3
2ème matiere ecrite :     coefficient =2
1ère matiere orale :       coefficient =4
2ème matière orale :     coefficient =5
Le coefficient de l’ecrit est 6, celui de l’orale est 1 dans le calcul de la moyenne generale.
Ecrire un algorithme permettant d’entrer toutes les notes de calculer et d’affficher la moyenne de l’ecrit ,celle de l’orale et la moyenne génerale.

Correction exercice 4 :

Algorithme  calcul_note;
Var
             me1,me2,mo1,mo2,moy : réels ;
const
             cme1=3 ;
             cme2=2 ;
              cmo1=4 ;
             cmo2=5 ;
Debut
                Ecrire(‘entrer la  note du 1ère matiere écrite : ‘) ;
                Lire(me1) ;
                Ecrire(‘entrer la  note du 2ème matiere écrite : ‘) ;
                Lire(me2) ;
    Ecrire(‘entrer la  note du 1ère matiere orale : ‘) ;
                Lire(mo1) ;
    Ecrire(‘entrer la  note du 2ème matiere orale: ‘) ;
                Lire(mo2) ;
                moy<--  (me1*cme1+me2*cme2+mo1*cmo1+mo2*cmo2)/(cme1+cme2+cmo1+cmo2) ;
   Ecrire(‘ la moyenne generale est   :  ‘,moy) ;
fin

Exercice 5 :

Ecrire un algorithme qui lit trois nombres dans trois variables A ,B et C , puis fait la permutation circulaire de ces trois nombres (sens trigonométrique) et affiche les nouveaux contenus des variables A,B et C .
Correction exercice 5 :

Algorithme  calcul_permutation;
Var
            A,b,c,aux : réels ;
Debut
                Ecrire(‘entrer la  de a : ‘) ;
                Lire(a) ;
                Ecrire(‘entrer la  de b : ‘) ;
                Lire(b) ;
    Ecrire(‘entrer la  de c : ‘) ;
                Lire(c) ;
    Ecrire(‘a = ‘,a,’     b= ‘,b,’         c=’,c) ;
                Auxß c ;
                a<--  b ;
                b<--  a ;
                a<--  aux ;
Ecrire(‘a = ‘,a,’     b= ‘,b,’         c=’,c) ;
fin

Exercice 6 :
Soit N un nombre entier. Proposer une opération avec laquelle nous pourrons conclure si le nombre N est pair ou impair.
Correction exercice 6 :

Algorithme  parite;
Var
      N :entier;
Debut
                Ecrire(‘entrer  un entier : ‘) ;
                Lire(N) ;
                Si  N mod 2 =0 alors
        Ecrire(‘le nombre est pair);
    Else
         Ecrire(‘le nombre est impair .’);
   Finsi
fin


Exercice 7 :

Ecrire un algorithme qui calcule le périmetre d’un cercle : p=2*π*R
Correction exercice 7:
Algorithme  calcul_perimetre;
Const
           Pi=3.14 ;
Var
            R,p: réels ;
Debut
                Ecrire(‘entrer le rayon R : ‘) ;
                Lire(R) ;
                P<--  2*pi*R
Ecrire(‘ le perimetre du cercle R=’,R,’ est   :’,p) ;
fin

Enregistrer un commentaire

Plus récente Plus ancienne