Cours Fonctions et algorithmes
QCM
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

L'énoncé

Cocher la bonne réponse.


Tu as obtenu le score de


Question 1

Voici un algorithme :

VARIABLES
$a,b,c$ sont des nombres

DEBUT
  \(a\) PREND_LA_VALEUR 3
  \(b\) PREND_LA_VALEUR \(a+2\)
  \(c\) PREND_LA_VALEUR \(b\)
  \(b\) PREND_LA_VALEUR \(c+a\)
  AFFICHER "Que vaut \(b\) ?"
  AFFICHER \(b\)

FIN

Que fait cet algorithme ?

Il donne la valeur de trois nombres et les affiches.

Il calcule la valeur de \(b\) et l’affiche.

Il tourne en boucle car \(c = b\) et \(b = c+a\) est une contradiction si \(a = 3\).

Aucune des trois réponses précédentes n’est exacte.

Lisez bien la question.

Question 2

VARIABLES
$a,b,c$ sont des nombres

DEBUT
\(a\) PREND_LA_VALEUR 3
\(b\) PREND_LA_VALEUR \(a+2\)
\(c\) PREND_LA_VALEUR \(b\)
\(b\) PREND_LA_VALEUR \(c+a\)
AFFICHER "Que vaut \(b\) ?"
AFFICHER \(b\)

FIN

Quelle est la valeur de \(b\) ?

5

3

8

Aucune des trois réponses précédentes n’est exacte.

Faites-vous un petit tableau en donnant la valeur de chaque variable à chaque étape de l’algorithme.

Question 3

VARIABLES
$a,b$ sont des nombres

DEBUT
LIRE \(a\)
\(b\) PREND_LA_VALEUR \(a \times a\)
\(b\) PREND_LA_VALEUR \(b+1\)
\(b\) PREND_LA_VALEUR \(\frac{b}{2}\)
AFFICHER "Que vaut \(b\) ?"
FIN_ALGORITHME

Cet algorithme a t-il une particularité ?

Non, il fonctionne de façon cohérente.

Il n’affiche pas de résultat.

Il y a un bug car \(b = \dfrac{b}{2}\) est impossible sauf si \(b = 0\).

Aucune des trois réponses précédentes n’est exacte.

Le tester sur Algobox est bien utile. Cependant, vous pouvez essayer d’imaginer la succession des différentes étapes dans votre tête.

Question 4

VARIABLES
$a,b$ sont des nombres

DEBUT
LIRE \(a\)
\(b\) PREND_LA_VALEUR \(a \times a\)
\(b\) PREND_LA_VALEUR \(b+1\)
\(b\) PREND_LA_VALEUR \(\frac{b}{2}\)
AFFICHER "Que vaut \(b\) ?"
AFFICHER \(b\)
FIN_ALGORITHME

A présent que cet algorithme affiche la dernière valeur de \(b\). Quel est l'enchainement d'opération effectué ici ?

\(b = a^2+\dfrac{1}{2}\)

\(b = \dfrac{a^2+1}{2}\)

\(b = \left(\dfrac{a}{2}\right)^2 +\dfrac{1}{2}\)

Vous pouvez prendre des exemples numériques au début mais très vite, il faut vous entrainer avec des variables inconnues.

Question 5

Encore un nouvel algorithme :

VARIABLES
\(n\) EST_DU_TYPE NOMBRE
inverse_n EST_DU_TYPE NOMBRE


DEBUT
   POUR \(n\) ALLANT_DE 1 A 20
       DEBUT_POUR
           inverse_n PREND_LA_VALEUR \(\frac{1}{n}\)
           AFFICHER inverse_n 
       FIN_POUR
FIN

Que fait cet algorithme ?

Il calcule et affiche les inverses des 20 premiers entiers non nuls.

Il n’affiche que l’inverse de 20.

Il calcule la somme des inverses des 20 premiers entiers non nuls.

Aucune des trois réponses précédentes n’est exacte.

Revoyez bien les notions de DEBUT_POUR et FIN_POUR. C’est expliqué dans la vidéo du site.

Question 6

Voici un nouvel algorithme :

VARIABLES
\(n\) EST_DU_TYPE NOMBRE
somme EST_DU_TYPE NOMBRE

DEBUT
somme PREND_LA_VALEUR 0
    POUR \(n\) ALLANT_DE 1 A 20
          DEBUT_POUR
             somme PREND_LA_VALEUR somme\(+\frac{1}{n}\)
          FIN_POUR
AFFICHER somme
FIN

Que fait cet algorithme ?

Il calcule et affiche la somme des 20 premiers entiers non nuls.

Il calcule et affiche les inverses des 20 premiers entiers non nuls.

Il affiche l’inverse de 20.

Aucune des trois réponses précédentes n’est exacte.

Question 7

VARIABLES
\(a\) EST_DU_TYPE NOMBRE
ValeurAbsolue EST_DU_TYPE NOMBRE

DEBUT
SI (\(a>0\) OU \(a==0\)) ALORS
     DEBUT_SI
            ValeurAbsolue PREND_LA_VALEUR \(a\)
     FIN_SI
SINON
     DEBUT_SINON
            ValeurAbsolue PREND_LA_VALEUR \(a \times (-1)\)
     FIN_SINON
AFFICHER "La valeur absolue de \(a\) est "
AFFICHER ValeurAbsolue
FIN

Cet algorithme est censé donner la valeur absolue d'un nombre. Vous convient-il ?

Oui.

Non.

Je ne sais pas !

Aucune des trois réponses précédentes n’est exacte.

La valeur absolue d’un réel est définie à l’aide d’un axe gradué \((O ; I)\).
(Tracez ici un axe gradué.) Placez un point \(M\) d’abscisse \(x\) sur cet axe. La valeur absolue de \(x\) notée \(|x|\) est la distance \(OM\).
Une distance est toujours positive. Ainsi, si \(x \geq 0, |x|=x\)
Si \(x<0, |x|=-x\)

Question 8

VARIABLES
\(a\) EST_DU_TYPE NOMBRE
ValeurAbsolue EST_DU_TYPE NOMBRE

DEBUT
SI (\(a>0\) OU \(a==0\)) ALORS
    DEBUT_SI
          ValeurAbsolue PREND_LA_VALEUR \(a\)
    FIN_SI
SINON
    DEBUT_SINON
         ValeurAbsolue PREND_LA_VALEUR \(a \times (-1)\)
    FIN_SINON
AFFICHER "La valeur absolue de \(a\) est "
AFFICHER ValeurAbsolue
FIN

Pourquoi cet algorithme ne fonctionne-t-il pas ?

\(a==0\) est mal écrit.

La valeur absolue d’un nombre négatif n’existe pas.

Cet algorithme tourne en boucle.

Aucune des trois réponses précédentes n’est exacte.

Testez méticuleusement chaque étape. L’ordinateur n’a pas la capacité d’inventer des valeurs.

Question 9

VARIABLES
$x,y$ sont des nombres

DEBUT
LIRE \(x\)
SI \((x==3)\) ALORS
       DEBUT_SI
          AFFICHER "3 n'a pas d'image"
       FIN_SI
SINON
      DEBUT_SINON
          \(y\) PREND_LA_VALEUR \(\frac{1}{(x-3)}\)
          AFFICHER \(y\)
      FIN_SINON
FIN

Que fait cet algorithme ?

Il donne l’ensemble de définition d’une fonction.

Il affecte à une valeur \(y\) la valeur de \(\frac{1}{x-3}\).

Il affecte à une valeur \(y\) la valeur de \(\frac{1}{x-3}\) sous conditions.

Aucune des trois réponses précédentes n’est exacte.

Demandez vous ce que fait cet algorithme à un nombre différent de 3.

Question 10

Ecrivez un algorithme qui demande un nombre de départ et qui affiche les dix nombres suivants augmentés chacun de une unité.

VARIABLES
\(x\) EST_DU_TYPE NOMBRE
\(y\) EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
POUR \(y\) ALLANT_DE 1 à 10
DEBUT_POUR
\(x\) PREND_LA_VALEUR x +1
AFFICHER \(x\)
FIN_POUR
FIN_ALGORITHME

VARIABLES
\(x\) EST_DU_TYPE NOMBRE
\(y\) EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE \(x\)
POUR \(y\) ALLANT_DE 1 à 10
DEBUT_POUR
\(x\) PREND_LA_VALEUR \(x +1\)
AFFICHER \(x\) et cocher retour à la ligne
FIN_POUR
FIN_ALGORITHME

VARIABLES
\(x\) EST_DU_TYPE NOMBRE
\(y\) EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE \(x\)
POUR \(y\) ALLANT_DE 1 à 10
DEBUT_POUR
\(x\) PREND_LA_VALEUR \(x +1\)
FIN_POUR
FIN_ALGORITHME

Aucune des trois réponses précédentes n’est exacte.

Faites vous un test sur un papier avec un nombre choisi au hasard. Est-ce une boucle ? Un test ? C’est plus facile avec des entiers.


Ecrivez votre algorithme sur Algobox et testez le. C’est le meilleur moyen de vérifier son efficacité.