Maths

Algorithmique

Le lutin t'obéit au doigt et au bloc

26 flashcards
Maths
Rappel espacé

Questions & réponses

1

Qu'est-ce qu'un algorithme ?

Une suite d'instructions ordonnées qui permet de résoudre un problème.

2

Dans un script, qu'est-ce qu'une séquence d'instructions ?

Des blocs exécutés l'un après l'autre, de haut en bas

3

Dans Scratch, à quoi sert le bloc « quand drapeau vert cliqué » ?

C'est l'événement qui lance le script

4

Qu'est-ce qu'une variable dans Scratch ?

Une case mémoire qui stocke une valeur (score, compteur...)

5

Dans Scratch, différence entre les blocs « mettre score à 0 » et « ajouter 1 à score » ?

- `mettre score à 0` : remplace la valeur par 0 - `ajouter 1 à score` : augmente la valeur actuelle de 1

6

Script : `mettre score à 0`, puis `ajouter 5 à score`, puis `ajouter 2 à score`. Quelle est la valeur finale de score ?

$7$

7

Script : `mettre n à 3`, puis `mettre n à 8`, puis `ajouter 1 à n`. Quelle est la valeur finale de n ?

$9$

8

Dans Scratch, que fait une boucle « répéter 4 fois » ?

Elle exécute les blocs à l'intérieur exactement 4 fois

9

Différence entre « répéter n fois » et « répéter jusqu'à » dans Scratch ?

- `répéter n fois` : boucle bornée, tourne un nombre de fois fixé - `répéter jusqu'à ` : boucle non bornée, tourne tant que la condition est fausse, et s'arrête dès qu'elle devient vraie

10

Dans Scratch, que fait le bloc « répéter indéfiniment » ?

Il répète les blocs sans jamais s'arrêter (boucle infinie)

11

Script : `mettre c à 0`, puis `répéter 3 fois { ajouter 2 à c }`. Quelle est la valeur finale de c ?

$6$

12

Script : `mettre x à 1`, puis `répéter 4 fois { mettre x à x × 2 }`. Quelle est la valeur finale de x ?

$16$

13

À quoi sert le bloc « si... alors... sinon » dans Scratch ?

À faire un test : le programme prend une décision selon qu'une condition est vraie ou fausse. Si condition vraie → bloc « alors ». Sinon → autre bloc.

14

Script : `mettre a à 7`, puis `si a > 5 alors { dire "grand" } sinon { dire "petit" }`. Que dit le lutin ?

« grand »

15

Script : `mettre a à 5`, puis `si a > 5 alors { dire "gagné" }` (sans sinon). Que dit le lutin ?

Rien. La condition $a > 5$ est fausse car $5 > 5$ est faux (5 n'est pas strictement supérieur à 5). Comme il n'y a pas de « sinon », rien ne se passe.

16

Dans Scratch, quels sont les opérateurs de comparaison disponibles ?

Trois blocs hexagonaux : `<` (inférieur), `=` (égal) et `>` (supérieur).

17

Dans Scratch, à quoi sert le bloc opérateur « reste de la division » (modulo) ?

Il donne le reste de la division euclidienne. `reste de 17 / 5` vaut $2$.

18

Repère de la scène Scratch : où se trouve le point de coordonnées (0 ; 0) ?

Au centre de la scène

19

Dans Scratch, que fait le bloc « aller à x: 100 y: 50 » ?

Il place le lutin au point de coordonnées $(100\,;50)$

20

Le lutin est en $(20 ; 50)$. Après le bloc `ajouter 30 à x`, quelles sont ses coordonnées ?

$(50\,;50)$

21

Dans Scratch, dans quel sens tourne « tourner ↻ de 90 degrés » et que fait l'orientation ?

Le lutin pivote de 90° dans le sens des aiguilles d'une montre (vers la droite). Son orientation augmente de 90°.

22

Pour tracer un carré avec « stylo en position d'écriture », quel script de boucle utiliser ?

`répéter 4 fois { avancer de 100 ; tourner de 90 degrés }`

23

Pour tracer un triangle équilatéral en boucle, de combien de degrés faut-il tourner à chaque coin ?

$120°$

24

Script : `mettre s à 0`, puis `répéter 5 fois { ajouter 1 à s ; avancer de (10 × s) }`. Combien de fois le lutin avance-t-il et de combien au 3e tour ?

Il avance 5 fois. Au 3e tour, $s = 3$ donc il avance de $10 \times 3 = 30$.

25

Script : `mettre n à 10`, puis `répéter jusqu'à n = 0 { ajouter -2 à n }`. Combien de tours fait la boucle ?

5 tours. $n$ passe de $10 \to 8 \to 6 \to 4 \to 2 \to 0$. La boucle s'arrête dès que $n = 0$.

26

Piège : pourquoi le script `mettre n à 5`, `répéter jusqu'à n = 0 { ajouter 1 à n }` ne s'arrête-t-il jamais ?

Parce que $n$ augmente (5, 6, 7...) au lieu de diminuer : il n'atteindra jamais 0. La condition d'arrêt $n = 0$ est impossible → boucle infinie.

Pret a reviser ?