[enonce]
Ce QCM porte sur des programmes Scratch avancés. Pour chaque question, lire attentivement le programme proposé puis choisir la bonne réponse parmi les 4 propositions.
[/enonce]
[etape]
On considère le programme Scratch suivant :

Que dit le lutin ?
[qcm]
[option]$15$[/option]
[option]$30$[/option]
[option correct="true"]$45$[/option]
[option]$75$[/option]
[reponse statut="correct"]Exact !
A chaque tour, on ajoute $k$ à $s$ puis on augmente $k$ de $3$ :
Tour 1 : $k = 3$, $s = 3$.
Tour 2 : $k = 6$, $s = 9$.
Tour 3 : $k = 9$, $s = 18$.
Tour 4 : $k = 12$, $s = 30$.
Tour 5 : $k = 15$, $s = 45$.
Le programme calcule $3 + 6 + 9 + 12 + 15 = 45$.[/reponse]
[reponse motif="$15$"]Non.
Le programme ne calcule pas $5 \times 3 = 15$. La variable $k$ change à chaque tour : elle prend les valeurs $3, 6, 9, 12, 15$. Il faut additionner toutes ces valeurs.[/reponse]
[reponse motif="$30$"]Non.
La boucle fait $5$ tours, pas $4$. Les valeurs de $k$ sont $3, 6, 9, 12, 15$ et il faut les additionner toutes les cinq.[/reponse]
[reponse motif="$75$"]Non.
Le programme additionne les valeurs de $k$ (pas $15 \times 5$). Les valeurs sont $3, 6, 9, 12, 15$ et leur somme est $3 + 6 + 9 + 12 + 15$.[/reponse]
[reponse statut="incorrect"]Non.
La variable $k$ prend les valeurs $3, 6, 9, 12, 15$ et le programme calcule leur somme : $3 + 6 + 9 + 12 + 15 = 45$.[/reponse]
[/qcm]
[/etape]
[etape]
On considère le programme Scratch suivant :

Quelle expression algébrique ce programme calcule-t-il ?
[qcm]
[option]$x^2 + 1$[/option]
[option correct="true"]$x^2 + 2x + 1$[/option]
[option]$2x^2 + 2x + 1$[/option]
[option]$x^2 + x + 1$[/option]
[reponse statut="correct"]Bonne réponse !
Le programme calcule $r = x + 1$, puis $r = r \times r = (x + 1)^2$.
En développant : $(x + 1)^2 = x^2 + 2x + 1$.[/reponse]
[reponse motif="$x^2 + 1$"]Non.
Le programme ne calcule pas $x^2$ puis n'ajoute pas $1$. Il calcule d'abord $r = x + 1$, puis $r = r \times r = (x + 1)^2$.
En développant $(x+1)^2$, on obtient un terme en $2x$ qu'il ne faut pas oublier.[/reponse]
[reponse motif="$2x^2 + 2x + 1$"]Non.
Le développement de $(x+1)^2$ donne $x^2 + 2 \times x \times 1 + 1^2 = x^2 + 2x + 1$. Le coefficient de $x^2$ est $1$, pas $2$.[/reponse]
[reponse motif="$x^2 + x + 1$"]Non.
Le développement de $(x+1)^2$ est $x^2 + 2x + 1$, pas $x^2 + x + 1$. Il faut appliquer l'identité remarquable $(a+b)^2 = a^2 + 2ab + b^2$.[/reponse]
[reponse statut="incorrect"]Non.
Le programme calcule $(x + 1)^2 = x^2 + 2x + 1$.[/reponse]
[/qcm]
[/etape]
[etape]
On considère le programme Scratch suivant :

Que dit le lutin ?
[qcm]
[option]$21$[/option]
[option correct="true"]$12$[/option]
[option]$9$[/option]
[option]$6$[/option]
[reponse statut="correct"]C'est bien ça !
La condition « $i$ mod $2 = 0$ » est vraie uniquement quand $i$ est pair.
La variable $i$ prend les valeurs $1, 2, 3, 4, 5, 6$ et seuls les nombres pairs sont ajoutés à $s$ : $s = 2 + 4 + 6 = 12$.[/reponse]
[reponse motif="$21$"]Non.
Le programme n'additionne pas tous les nombres de $1$ à $6$. La condition « $i$ mod $2 = 0$ » filtre les nombres pairs uniquement. Seuls $2$, $4$ et $6$ sont ajoutés à $s$.[/reponse]
[reponse motif="$9$"]Non.
Le programme additionne les nombres pairs, pas les nombres impairs. L'opération $i$ mod $2$ donne le reste de la division par $2$ : le résultat est $0$ quand $i$ est pair.[/reponse]
[reponse motif="$6$"]Non.
Il y a trois nombres pairs entre $1$ et $6$ ($2$, $4$ et $6$), et il faut les additionner tous les trois, pas seulement le dernier.[/reponse]
[reponse statut="incorrect"]Non.
Le programme additionne les nombres pairs de $1$ à $6$ : $s = 2 + 4 + 6 = 12$.[/reponse]
[/qcm]
[/etape]
[etape]
On considère le programme Scratch suivant :

Que dit le lutin ?
[qcm]
[option]$16$[/option]
[option correct="true"]$30$[/option]
[option]$32$[/option]
[option]$60$[/option]
[reponse statut="correct"]Bravo !
A chaque tour, on ajoute $\text{terme}$ à $s$ puis on double $\text{terme}$ :
Tour 1 : terme $= 2$, $s = 2$.
Tour 2 : terme $= 4$, $s = 6$.
Tour 3 : terme $= 8$, $s = 14$.
Tour 4 : terme $= 16$, $s = 30$.
Le programme calcule $2 + 4 + 8 + 16 = 30$.[/reponse]
[reponse motif="$16$"]Non.
$16$ est la dernière valeur de $\text{terme}$, pas la somme. Le programme affiche $s$, c'est-à-dire la somme $2 + 4 + 8 + 16$.[/reponse]
[reponse motif="$32$"]Non.
$32$ serait la valeur de $\text{terme}$ après le 5e doublement, mais la boucle ne fait que $4$ tours. Et le programme affiche $s$ (la somme), pas $\text{terme}$.[/reponse]
[reponse motif="$60$"]Non.
Il faut bien additionner les valeurs de $\text{terme}$ au moment où elles sont ajoutées, pas après le doublement. La somme est $2 + 4 + 8 + 16$.[/reponse]
[reponse statut="incorrect"]Non.
Les valeurs ajoutées sont $2, 4, 8, 16$ et leur somme vaut $s = 2 + 4 + 8 + 16 = 30$.[/reponse]
[/qcm]
[/etape]
[etape]
On considère le programme Scratch suivant :

Que dit le lutin ?
[qcm]
[option]$8$[/option]
[option correct="true"]$13$[/option]
[option]$21$[/option]
[option]$20$[/option]
[reponse statut="correct"]Exactement !
A chaque tour, on calcule $c = a + b$, puis $a$ prend la valeur de $b$ et $b$ prend la valeur de $c$. Déroulons :
$a = 1, b = 1$ : $1 + 1 = 2 \leqslant 20$, $c = 2$, $a = 1, b = 2$.
$a = 1, b = 2$ : $1 + 2 = 3 \leqslant 20$, $c = 3$, $a = 2, b = 3$.
$a = 2, b = 3$ : $2 + 3 = 5 \leqslant 20$, $c = 5$, $a = 3, b = 5$.
$a = 3, b = 5$ : $3 + 5 = 8 \leqslant 20$, $c = 8$, $a = 5, b = 8$.
$a = 5, b = 8$ : $5 + 8 = 13 \leqslant 20$, $c = 13$, $a = 8, b = 13$.
$a = 8, b = 13$ : $8 + 13 = 21 > 20$, la boucle s'arrête.
Le lutin dit $b = 13$.[/reponse]
[reponse motif="$8$"]Non.
Quand $a = 5$ et $b = 8$, la condition $5 + 8 = 13 \leqslant 20$ est encore vraie. La boucle continue un tour de plus.[/reponse]
[reponse motif="$21$"]Non.
$21$ est la valeur de $a + b$ qui fait s'arrêter la boucle, mais le lutin affiche $b$ (pas $a + b$). A ce moment, $b = 13$.[/reponse]
[reponse motif="$20$"]Non.
La boucle ne s'arrête pas quand la somme vaut exactement $20$. Les sommes successives sont $2, 3, 5, 8, 13, 21$. La boucle s'arrête quand la somme dépasse $20$, c'est-à-dire à $21$, et $b$ vaut alors $13$.[/reponse]
[reponse statut="incorrect"]Non.
En déroulant la boucle, les valeurs de $b$ sont $1, 2, 3, 5, 8, 13$. La boucle s'arrête quand $a + b = 21 > 20$, et le lutin dit $b = 13$.[/reponse]
[/qcm]
[/etape]
[etape]
On compare les deux programmes Scratch suivants, exécutés avec $x = 5$ :
Programme A :
Programme B :

Quelle est la différence entre le résultat du programme A et celui du programme B ?
[qcm]
[option]$0$ (même résultat)[/option]
[option correct="true"]$3$[/option]
[option]$6$[/option]
[option]$5$[/option]
[reponse statut="correct"]Tu as raison !
Programme A : $r = 5$, puis $r = 5 + 3 = 8$, puis $r = 8 \times 2 = 16$.
Programme B : $r = 5$, puis $r = 5 \times 2 = 10$, puis $r = 10 + 3 = 13$.
La différence est $16 - 13 = 3$.[/reponse]
[reponse motif="$0$ (même résultat)"]Non.
L'ordre des opérations change le résultat. « Ajouter $3$ puis multiplier par $2$ » ne donne pas le même résultat que « multiplier par $2$ puis ajouter $3$ ». Il faut dérouler chaque programme.[/reponse]
[reponse motif="$6$"]Non.
Il faut dérouler chaque programme séparément.
Programme A : $5 + 3 = 8$, puis $8 \times 2 = 16$.
Programme B : $5 \times 2 = 10$, puis $10 + 3 = 13$.
La différence est $16 - 13$.[/reponse]
[reponse motif="$5$"]Non.
Il faut calculer les résultats de chaque programme.
Programme A : $(5 + 3) \times 2 = 16$.
Programme B : $5 \times 2 + 3 = 13$.
Puis faire la différence entre ces deux résultats.[/reponse]
[reponse statut="incorrect"]Non.
Programme A donne $(5 + 3) \times 2 = 16$ et programme B donne $5 \times 2 + 3 = 13$. La différence est $16 - 13 = 3$.[/reponse]
[/qcm]
[/etape]