Table des Matières

Sujet précédent

Tutoriel de base

Sujet suivant

2. Apprentissage guidé par des tâches

Cette page

1. Premier programme

../_images/avance.png

Si vous avez suivi correctement les instructions indiquées à la page d’accueil de ce tutoriel, Reeborg a fait ses premiers pas. Dans l’onglet “Code Python” se trouve une seule instruction:

avance()

avance() est un exemple d’une fonction. Une fonction a un nom; dans ce cas-ci, c’est avance. Pour être valide, les noms doivent débuter soit par une lettre ou par le caractère de soulignement “_”, et peuvent contenir des lettres, des chiffres ou le caractère de soulignement. Le nom de le fonction peut être suivi par des parenthèses (). La présence des parenthèses indique à Reeborg (Python) que la fonction doit être exécutée. La fonction doit être sur sa propre ligne (nous verrons des exceptions à ceci plus tard).

Occasionnellement, nous ferons des organigrammes qui sont une représentation graphique d’un programme. Dans un organigramme, une simple instruction comme avance() pourrait être représentée de la façon suivante:

../_images/avance1.png

et un programme complet, comprenant seulement cette instructions, serait représenté comme suit:

../_images/avance.jpg

Dans un organigramme, la séquence des instructions suit les flèches.

Essayez ceci!

Ajouter une seconde instruction avance() faisant en sorte que Reeborg fasse deux pas plutôt qu’un seul.

Indice

Chaque instruction doit apparaître sur sa propre ligne, sans espace superflu au début de la ligne.

1.1. Composer avec les eRReuRs

Lorsque vous allez écrire des programmes, vous allez occasionnellement faire des erreurs. Pour voir comment Reeborg réagit lorsqu’il rencontre des erreurs, je vous demande d’en faire une de façon intentionnelle.

Essayez ceci!

Changez avance() à Avance() (avec un A majuscule) et exécutez le programme.

1.1.1. Qu’est-il arrivé?

Tout d’abord, je note que le message d’erreur indique NameError: Les messages d’erreurs comportent parfois des termes anglais, mais ceci est malheureusement incontournable...

Python, le langage que Reeborg comprend, est “sensible à la casse”; c’est-à-dire que les lettres majuscules et les lettre minuscules ont des sens différents. Corrigez-donc le programme pour que Reeborg soit en mesure de le comprendre et vérifiez que cela est bien le cas.

Lorsque vous aurez exécuté le programme à nouveau, les indications d’erreurs seront effacées. Assurez-vous que ceci soit bel et bien le cas.

1.2. Règle numéro 1

Est-ce que vous avez bel et bien essayé toutes les suggestions ci-dessus? Sinon, je vous implore de le faire. Voyez-vous, la règle la plus importante que vous devez suivre pour apprendre à programmer est la suivante:

Important

Règle numéro 1
Apprendre la programmation informatique est comme apprendre à jouer d’un instrument de musique: il faut le faire et non pas se contenter de lire à ce sujet.

Chaque fois que je vous suggère d’essayer quelque chose, j’ai une raison bien précise pour le faire. Parfois, cette raison ne vous sera pas évidente, mais je vous encourage fortement de toujours essayer. En fait, je vous encourage à essayer d’autres exemples de votre cru, ce qui vous permettra d’approfondir votre compréhension.

1.3. Un outil pour vous aider

Tout en haut du Monde de Reeborg, vous verrez un bouton intitulé Clavier de Reeborg. Si vous cliquez dessus, un clavier spécial apparaitra. En cliquant sur différent bouton, vous pouvez insérer des instructions utiles pour Reeborg ... tout en évitant de faire des erreurs en oubliant des parenthèses requises, ou en épelant incorrectement un mot.

Pour les enseignants

Le clavier de Reeborg peut être particulièrement utile pour trois catégories de programmeurs: les plus jeunes, qui ne maîtrisent pas un clavier “normal”, ceux qui utilisent des écrans tactiles avec un clavier virtuel, et ceux qui utilisent un clavier avec certains symboles requis difficiles à entrer.

Au moment où j’édite ce tutoriel pour rajouter cette note, je viens tout juste de rajouter le clavier de Reeborg ainsi qu’une commande (pas de surlignement()) qui n’est pas documentée dans ce tutoriel (ni dans l’aide en ligne). Ceci risque d’arriver au sujet d’autres commandes ... n’hésitez pas à me contacter si vous voyer des erreurs (possiblement par omission) dans ce tutoriel pour que je puisse les corriger.