Menu Cours OfpptLes Exposés INFOMotr Depanneur FrigoristeExposéé Asp.Net 2TDIInfographieRéseaux InformatiquesProjets ProgrammationReparateur FrigoristeTSRFCurriculum VitaeModules TSDITSTRIFilière TechnicienProcéduresRéseaux InformatiquesTMSIR ElectromecaniqueGéomètre TopographeJob Search USAlettre de motivationMécanique GénéralL'ELECTRONIQUE كتاب Modules TER et TSCExaman TDITSGE et TSGNe9la TSG et TCECours TCEElectrotechnique TSEالجامعات الأمريكيةGuide De Stageالجامعات المغربيةالجامعات الفرنسيةTREM السنة الأولىL’entretienExamine TDBTCVVPRU.S. Community CollegesCondition D'accesDévelopp MultimédiaMaintenance Hoteliere TMH3D Aburame Shinorecharge gratuitExamens TSCLes Projets INFOControles TPs - ExLes Modules TSRIPHP et MySQLXHTML et CSSFroid IndustrielBE Contruction Métalliquedrapo de mondeTREM دروس التكوين Examens electromecaniCommunicationTechniques l'ingénieurDevlopement INFOExamens TSTRIExamens TSGEChef De Chantierكتب لغات البرمجةCours TSMIRملف الترشيحElectricité ISTAAutoCad 2013 حملTS Thermique IndustrielleESAT CUISINE RFSLetters De MotivationExamens ISTALes CV ExemplesRapports De StageLes Entretien Examens TDIExamens ISTAالصحف المغربيةمواقع التشغيلغرفة النقاش الجادمواقع مغربية مهمةDessin de BatimentExploitation en TransportFabrication Mécanique TFMالتسجيل مفتوحConducteur De TravauxSecrétariat de DirectionSecrétariat BureautiqueRéseaux InformatiquesInfographieImpression et FinitionGestion Hôtelière TSGHGestion des EntreprisesDévelopp InformatiqueCommerce TSCComptabilite entrepriseAgent Technique DeVPresentation De L'OFPPTAnimation TouristiqueGros Oeuvresالدعـــم المباشــــرالأعمال التطبيقية - TREMسنة ثانية - TREM دروسسنة أولى - TREM دروس

Instructions répétitives

Instructions répétitives : les boucles
 
Exercice 1 :
 
Ecrire un algorithme permettant de lire une suite de nombres réels sur le clavier. Le dernier élément à lire est un zéro.
L’algorithme doit afficher le plus petit élément de la suite ainsi que la somme des éléments lus.
 
 
Solution :
Algorithme  lire_une_suite;
Var
            a,s : réels ;
Debut
              Repeter
                        Ecrire(‘entrer un  nombre: ‘) ;
                        Lire(a) ;
                        S<-- s+a ;
              Jusqu'à (a=0)
              Ecrire(‘la somme des nombres est :  ‘,s) ;
fin
 
Exercice 2 :
 
Ecrire un algorithme qui lit les noms des athlètes désirant participer à un marathon et s’arrête lorsqu’il rencontre deux noms consécutifs identiques.
L’algorithme doit afficher , à la fin , le nombre de participants.
 
 
Solution :
Algorithme  lire_une_suite;
Var
            Nom1,nom2 : chaine de 30 caractères ;
            Compteur  i  :entier ;
Debut
                Ecrire(‘entrer un nom d’athlète   : ‘) ;
                Lire(nom1) ;
                Ecrire(‘entrer un nom d’athlète   : ‘) ;
                Lire (nom2) ;
                i <--  2 ;
              Tantque(nom1 <> nom2)
                        Nom1 <--  nom2 ;
                        Ecrire(‘entrer un  nom d’athlète  : ‘) ;
                        Lire(nom2) ;
                        i<-- i+1;
              Fintantque
              Ecrire(‘le nombre des participants est :  ‘,i) ;
fin
 
Exercice 3 :
 
Dans un cinéma , on désire calculer la moyenne  d’âges de personnes s’intéressant à voir un film particulier.
Pour finir, l’utilisateur doit répondre par ‘N’ à la question posée par l’algorithme : 
‘’ Encore une autre personne (O/N) ? ’’
Et on doit afficher la moyenne d’âges des personnes à l’ecran.
 
 
Solution :
Algorithme  moyenne_age;
Var
            i ,age,som :entier ;
Debut
                i <-- 0 ;
                age <-- 0 ;
                Repeter
                        Ecrire(‘ entrer l’age du personne ’) ;
                        Lire(‘age’ ) ;
                          i<-- i+1 ;
                        Som <-- som+ age ;
                          Ecrire(‘Encore une autre personne (O/N) ?’)
                          Lire(rep) ;
                Jusqu'à (rep=’N’)
              Ecrire(‘la moyenne d’âges des personnes  est :  ‘,som/i) ;
fin
 
Exercice 4 :
 
Ecrire un algorithme permettant de calculer la factorielle d’un nombre entier positif N.
N ! = 1*2*3*……..*N
 
 
Solution :
Algorithme  factorielle;
Var
              i ,N,fact:entier ;
Debut
                fact<--  1 ;
                pour i=1 à N faire
                             fact<-- fact*i ;
                Finpour  i
              Ecrire(‘ la factorielle de  ’ ,N,’  est   : ‘,fact  ) ;
fin
 
Exercice 5 :
 
Pour avoir une idée sur le niveau des éleves d’une classe, on a décidé de calculer la moyenne  de la classe à partir des moyennes générales de tous les élèves qui sont au nombre de 30.
         Moy =
Ecrire un algorithme de résolution.
 
 
Solution :
Algorithme  moyenne_classe;
Var
              i   :entier ;
                NT ,som: réels
const
                nb=30 ;
Debut
                Som <--  0 ;
                pour i=1 à N faire
                            Ecrire(‘ entrer la note N°’,i,’ :’) ;
                            Lire(NT) ;
                            Som<-- som+NT ;
                Finpour  i
              Ecrire(‘ la moyenne de la classe est : ‘,som/nb ) ;
fin
 
Exercice 6 :
 
Ecrire un algorithme qui permet de retrouver le maximum, le minimum ainsi que la somme d’une liste de nombres positifs saisis par l’utilisateur. La fin de la liste est indiquée par un nombre négatif. La longueur  de la liste n’est pas limitée.
Exemple :              si la liste des éléments est : 7   3   20     15    2      6    5   -1
                                Le maximum est 20  , le minimum est 2 .
 
 
Solution :
Algorithme  moyenne_age;
Var
            i ,n,som :entier ;
Debut
                Ecrire(‘ entrer un nombre ’) ;
              Lire(‘n’ ) ;
                max<--  n ;
                min <--  n ;
                som <--  n ;
                Tantque n>0  faire
                        Ecrire(‘ entrer  un nombre’) ;
                        Lire(‘n’ ) ;
                         Si min>n  alors
                                Min <--  n ;
                         Finsi
             Si max<n  alors
                                 Max <--  n ;
                          Finsi
                fintantque
              Ecrire(‘Le maximum est  ‘,max ,’ le minimum est ‘,min) ;
fin