La dernière structure de flux de contrôle de programmation à apprendre est des instructions conditionnelles ( if et if/else ).
Une if/else Cette instruction exécute un "si" code-block si et seulement si letesterest vrai pour l'état du monde au moment où le programme atteint la déclaration. Sinon, le programme exécute le bloc de code "else".
if tester :
si code-block
autre:
Pour avoir une idée de l'endroit où les instructions conditionnelles pourraient être utiles, écrivons un programme dans lequel Karel inversera une ligne de jetons . Si une case avait auparavant un jeton , Karel devrait le prendre. Si une case n'a pas de jeton , Karel doit en poser une.
Notez qu'un if déclaration n'a pas besoin d'avoir un else bloc - auquel cas l'instruction fonctionne comme un while boucle qui n’exécute qu’une fois:
if tester :
si code-block
Ce dernier exemple utilisait une nouvelle condition. Voici une liste de toutes les conditions connues de Karel:
| Tester | Contraire | Qu'est-ce qu'il vérifie |
|---|---|---|
l'avant_est_clair() |
l'avant_est_bloqué() |
Y a-t-il un mur devant Karel? |
jetons_présent() |
no_jetons_présent() |
Y a-t-il jetons dans ce coin? |
la_gauche_est_claire() |
la_gauche_est_bloquée() |
Y a-t-il un mur à gauche de Karel? |
le_droit_est_clair() |
la_droite_est_bloquée() |
Y a-t-il un mur à la droite de Karel? |
jetons_en_sac() |
no_jetons_en_sac() |
Karel a-t-il du jetons dans son sac? |
face_au_nord() |
pas_face_au_nord() |
Karel fait-il face au nord? |
face_au_sud() |
pas_face_au_sud() |
Karel fait-il face au sud? |
face_à_l'est() |
pas_face_à_l'est() |
Karel fait-il face à l'est? |
face_à_l'ouest() |
pas_face_à_l'ouest() |
Karel fait-il face à l'ouest? |
Félicitations! Vous connaissez maintenant tous les blocs de flux de contrôle de programmation de base. Pendant que vous les avez appris avec Karel, les méthodes, les boucle while , les boucle while , les boucle for if / else fonctionnent de la même manière dans presque tous les principaux langages, y compris Python.
Maintenant que vous avez les éléments de base, vous pouvez les assembler pour trouver des solutions à des problèmes de plus en plus complexes. Dans une large mesure, la programmation est la science de la résolution de problèmes par ordinateur. Parce que les problèmes sont souvent difficiles, les solutions - et les programmes qui les implémentent - peuvent l'être également. Afin de faciliter le développement de ces solutions, vous devez adopter une méthodologie et une discipline qui réduisent le niveau de cette complexité à une échelle raisonnable.