Une introduction à l’algorithmique
Scratch est un logiciel en ligne développé au MIT permettant d’apprendre la programmation. Pour démarrer ouvrez une nouvelle fenêtre dans votre navigateur et rejoignez le site http://scratch.mit.edu (si ce n’est pas déjà le cas, passez le site en français en sélectionnant la langue tout en bas de la page). Cliquez ensuite sur « Créer » et vous devriez voir apparaître la page ci-dessous.
Exercice 1
Il est temps de démarrer votre premier algorithme (ou programme, ou encore script). Voici le modèle que vous devez reprendre :
Quelques remarques sur le fonctionnement de l’éditeur:
- faites glisser à la souris les instructions de la gauche vers la droite puis modifiez éventuellement le contenu du texte au clavier
- attention à bien « connecter » les instructions les unes aux autres (elles passent en surbrillance)
- pour supprimer une instruction faites-la repasser dans l’autre sens
Une fois le programme terminé démarrez-le en cliquant sur le drapeau: vous devriez voir le chat vous annoncer la valeur de 13 au carré…
Exercice 2
Le problème avec cet algorithme est qu’il faut modifier la valeur à la main si on veut afficher le carré de 15, ou bien de 38, etc. Pour y remédier nous allons ajouter une variable :
- cliquez sur la rubrique « Données » puis « Créer une variable », et appelez-la « Nombre »
- la variable « Nombre » apparaît dans la fenêtre des instructions, mais aussi dans la fenêtre d’exécution. Faites un clic-droit pour lui ajouter un potentiomètre : vous pouvez maintenant donner à « Nombre » une valeur entre 0 et 100
- remplacez le premier affichage dans l’algorithme par « La valeur au carré est : »
- remplacez le second affichage par l’expression Nombre * Nombre
- à présent, à chaque exécution, le chat vous affiche la valeur au carré de « Nombre »…
Exercice 3
Pour écrire des algorithmes plus intéressants nous avons besoin d’un nouveau type d’instructions, situées dans la rubrique « Contrôle » et appelées si…alors et si…alors…sinon. Ces instructions doivent être associées à un test, par exemple « a = b » (rubrique « Opérateurs »). Voici un exemple :A vous de jouer:
- écrivez un algorithme avec deux variables a et b qui affiche « a est plus grand que b« , « a est plus petit que b » ou « a est égal à b » selon les cas.
- plus compliqué: à partir de 3 variables, affichez-les en ordre croissant (par exemple pour a=14, b=15 et c=4, on doit voir s’afficher « c puis a puis b« ). Attention à bien vérifier si votre algorithme est correct pour tous les cas… Et d’ailleurs, combien y’a-t-il de cas différents ?
- Si vous êtes en classe de première écrivez un algorithme qui calcule et affiche les racines réelles d’une équation du second degré de type a*x*x + b*x + c = 0 . Sinon écrivez un algorithme qui calcule la solution x d’une équation du premier degré de type a*x + b = 0 où a et b sont des variables. Attention à traiter les cas dégénérés : infinité de solutions (si a=b=0) ou aucune solution (si a=0 mais pas b)