Table des matières

la page avec les exemples de la dernière fois

Révisions sur la programmation (chapitres 3 à 6)

Chapitre 3 Répeter des opérations

Répeter des operations p.41 Exercice 1 et 2

Si vous rencontrez des difficultés avec les exercices ci-dessus, vous pouvez en savoir plus sur la Programmation modulaire et les définitions des commandes ici (ou dans le livre Chapitre 2):

Définir et utiliser de nouvelles commandes

Si vous rencontrez des difficultés avec les “Boucles simples” vous pouvez en lire plus dans le livre Chapitre 3, page 30, ou suivre ce lien:

Boucles simples

Répétition des operations et paramètres (Chapitre 4)

p. 57 exercice 1 (commande avec des paramètres)

p. 57 exercice 2

Variables (Chapitre 5)

p. 75 exercice 1 et 2

#Un programme qui montre les nombres naturels jusqu'au paramètre donné
def afficher_les_nombres_jusqua(maximum):
    numero_actuel = 0
    repeat maximum:
        print numero_actuel
        numero_actuel = numero_actuel + 1

def afficher_les_nombres_jusqua_v2(maximum):
    numero_actuel = 0
    while numero_actuel <= maximum:
        print numero_actuel
        numero_actuel = numero_actuel + 1
        
afficher_les_nombres_jusqua(10)

Branchements et boucles conditionnelles (Chapitre 6)

Exercice R1

lien vers l'exercice sur plateforme

Développez un programme “d’identification” qui permet à un utilisateur de se “loguer sur l’ordinateur”. Les logins valables sur l’ordinateur sont les suivants, mentionnés avec le mot de passe correspondant :

  TartempionJ (mot de passe: 8ahH8$8AHZ)
  DoeJ (mot de passe: Rikiki1_0)

Lorsque l’utilisateur DoeJ se connecte avec succès, le système de login doit afficher la phrase “Welcome back, John!”. Lorsque c’est TartempionJ qui se connecte, le système doit lui répondre “Bonjour Monsieur Tartempion, comment allez-vous aujourd'hui?”.

Tous les autres utilisateurs doivent recevoir le message “Accès refusé”. Si l’utilisateur saisit l’un des comptes utilisateur existants mais se trompe de mot de passe, il doit également recevoir le même message.

Commencez par dessiner dans votre cahier l’ordinogramme de ce programme. Complétez ensuite le programme ci-dessous directement dans l’éditeur:

Réflexion sécurité informatique

Dans ce programme, on stocke les mots de passe des utilisateurs “en clair”. Quel danger potentiel de sécurité cela peut-il poser? Comment pourrait-on résoudre ce problème?

user_name = input("Login: ")

if user_name == "DoeJ":
    print("Welcome back, John!")

print("Accès refusé")

Exercice R3 (de la dernière fois)

Lien vers la plateforme

Développez une commande spirale(nb_cotes, cote_initial, increment, angle, cote_max) qui dessine une spirale dont le premier côté dessiné vaut cote_initial et qui augmente à chaque fois la longueur des côtés de increment. La tortue doit tourner de angle degrés entre chaque côté.

Testez ensuite votre commande avec différentes valeurs pour les paramètres.

from gturtle import *
makeTurtle()

def spirale(nb_cotes, cote_initial, increment, angle):
# compléter le code ici

Un exemple plus simple pour une spirale carrée:

from gturtle import *

def spirale(cote, cote_max):
    while cote<cote_max:
        forward(cote)
        left(90)
        cote=cote+5

makeTurtle()
hideTurtle()
spirale(5, 150)

Exercice R2 (de la dernière fois)

L'exercice sur les années bissextiles de la dernière fois