Voilà un autre exemple de contrôles qui concerne l’ algorithme et python  (contrôle 1 v1). Aussi, nous proposons une solution de cet contrôle. Mais, on vous encourage de ne pas voir la solution qu’après des essais . Bonne chance! 

Contrôle 1 (1h15min)

Exercice 1 : (5 points)

  1. Quel est le rôle d’une structure répétitive dans un algorithme. Donner un exemple ? (3pts)
  2. Donner un exemple d’utilisation d’une structure alternative imbriquée. (2pts)

Exercice 2 : (9points)

Supposons qu’on veut lire  une suite de caractères jusqu’au premier ‘.’ rencontré. On calcule et on affiche le nombre d’occurrences du premier caractère saisit.

  1. Est-ce qu’on doit utiliser une boucle ? Si oui, décrire le traitement à répéter  et la boucle la plus convenable pour ce cas (Justifiez votre réponse) (1pt+1pt+1pt)
  2. Proposer un algorithme (3pts)
  3. Donner un programme en python. (3points)

Exercice 3 : (6 points)

Considérons le programme suivant :

for i in range(3,20,3):

    if i == 12:

         print(i == 12)

    if i > 15:

         print(i > 15)

     if i < 10:

         print(i < 10)

     else:

          print(“else”)

  1. Quelle est le résultat affiché si l’utilisateur donne 4 ? (2 points)
  2. Remplacer la boucle for par while. (4 points)Donner

Vous pouvez suivre notre cours de l’algorithmique. pour approfondir vos compétences et surmonter tous les problèmes d’analyse et de résolution de problème.

Aussi, vous avez une playlist des vidéos (Explication en Darija arabe marocaine)  bien organisée qui traite : Les algorithmes

Nous proposons d’autres exercices sur les algorithmes. C’est intéressant : Exercices en algorithmes 

Nous proposons une solution de ce contrôle qui concerne l’ algorithme et python  (contrôle 1). Mais, on vous encourage de ne pas voir la solution qu’après des essais . Bonne chance! 

Algorithmes : Contrôle 1 (solution)

Exercice 1 (solution) : (5 points)

  1.  Une structure répétitive permet de répéter des ordres selon une condition ou un certain nombre de fois. Exemple : Afficher les nombres pairs de 1 à 1000 (3pts)
  2. Exemple d’utilisation d’une structure alternative imbriquée. (2pts) :

Algo_Exemple

variable a :entier

debut

ecrire  donner un nombre entier : 

lire a

si (a>0) alors

ecrire   nombre positif 

sinon

    si (a<0) alors

        ecrire   nombre négatif 

     sinon

        ecrire   nombre null 

     fin si

fin si

fin

Exercice 2 (solution ) : (9points)

  1. Oui on doit utiliser une boucle. Le traitement à répéter : la lecture des caractères et le calcul de nombre d’occurrences du premier caractère. La boucle la plus convenable pour ce cas est : Tant que ou répéter …jusqu’à , car on ne sait pas le nombre de répétitions. (3pts)
  2. Algorithme (3pts)

Algo_Ex2

Variables c,cpremier : caractere

cmp :int

debut

ecrire  donner un caractère ou . pour finir 

lire cpremier

si (cpremier==’.’) alors

ecrire Fin dès le début. Le premier caractère est un . 

sinon

  c=cpremier

  tant que (c != ‘.’)

    si (c==cpremier) alors

        cmp <- – cmp+1

     finsi

     ecrire donner un caractère ou . pour finir 

      lire c

  fin tantque

fin si

Ecrire  le caractère   , cpremier, est répété  , cmp,  fois 

fin

3. Programme en python. (3pts) :

pour l’instant , on n’a pas un moyen pour lire un seul caractère (voir le chapitre des chaines de caractères en python) . Donc , on va essayer de lire une tous les caractères à la fois. Mais on doit vérifier que vraiment on a fini par un ‘.’.Puis on extrait le premier caractère et on calcule le nombre d’occurrence. Pour cela , on propose le programme suivant (on peut trouver une solution plus simple si on connaît les méthodes prédéfinies de chaines de caractères en python) :

while True:

chaine=input(“Donner une suite de caractères qui fini par .”)

for c in chaine:

    cdernier=c

    if cdernier!=’.’:

      chaine=input(“Donner une suite de caractères qui fini par .”)

     else:

         break

for c in chaine:

     cpremier=c

     break

cmp=0

for c in chaine:

   if c==cpremier:

       cmp+=1

print(“Le premier caractère est :”,cpremier,”est répété “,cmp,”fois”)  

exercice 3 - Q1
exercice 3 - Q1

Exercice 3 (solution) : (6 points)

  1. Résultat : (2 points)  : voir l’image (exercice 3 – Q1)
  2. Remplacer la boucle for par while. (4 points)

solution :

i=3

while i<20:

    if i == 12:

         print(i == 12)

    if i > 15:

         print(i > 15)

    if i < 10:

         print(i < 10)

    else:

          print(“else”)

    i+=3

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *