Python : Cours ET exercices

Rappel : Selon les consignes du professeur, choisir une des trois outils suivants:

Le logiciel à installer

Programmation en ligne

Cours très complet



Important :

  • CLIQUER ICI POUR OURIR LE DOCUMENT GOOGLE COLAB

  • Choisir "Enregistrer une copie dans Drive"

  • RENOMMER : NOM-PRENOM-PYTHON

  • Rendre le travail dans Google Classroom.

Le document est également mis à disposition dans Google Classroom.

  • EFFECTUER TOUS LES PROGRAMMES

Tous les exercices doivent commencer par :

  • La ligne de commentaire comporte ton nom et le thème traité.

  • Un commentaire en Python commence par un #. Ce caractère s'obtient en appuyant que la touche Alt Gr puis le # sur un PC ou en appuyant sur la touche majuscule et la touche # sur un Mac.

Exemple de commentaire :

# Ce script qui utilise l'addition a été écrit par Camille EPICENE

Autant que possible, tes programmes doivent avoir une touche personnelle comme :

  • L'utilisation de ton prénom, de ta taille..,

  • Tu peux formuler certains textes un peu différemment...

Au travail ! :-)





Le Chat est une série de dessins humoristiques créée par Philippe Geluck


Partie 1

Ne pas dépasser 1h25. Fais le plus d'exercices possible.

IL FAUT ESSAYER DE TERMINER TOUS LES PROGRAMMES DE LA PARTIE 1 EN 2 SÉANCES.

Il s'agit de tous les programmes jusqu'au "Quiz 2"

1. Afficher du texte et des nombres.

Les exemples ci-dessous sont à lire et à faire.

Objectif

Python

Scratch

Afficher un texte

print(“Coucou”)

Afficher un nombre ou le résultat d'une opération.

print(10)

ou

print(5+9)

Afficher du texte et des valeurs numériques

print("Le prix est : ",9)

ou

print("Le prix est ",5+4," euros")

Une virgule ou un point ?

  • On voit ici que la virgule n'est pas utilisée pour les nombres décimaux ; on utilise le point, comme en anglais.

Exemple : On ne tape pas 3,14 mais 3.14

  • La virgule permet de séparer des entités dans un print.

Afficher la valeur d'une variable.

longueur=10

print(longueur)

"longueur" étant une variable, il affichera la valeur de la variable : 10

Exercice 1.1 : Afficher du texte

Tape le script qui affichera :

Bonjour ! C'est Prénom.

Utilise ton prénom.

Exercice 1.2 : Afficher du texte et un nombre

Tape le script qui affichera par exemple :

Bonjour, j'ai 15 ans.

Il ne faut pas taper 15, mais un calcul. Il s'agira d'une soustraction : l'année en cours moins ton année de naissance.

2. Calculs très simples

Les exemples ci-dessous sont à lire et à faire.

Objectif

Python

Scratch

Additionner

Soustraire

Multiplier

Diviser

Calculer le carré d'un nombre

5+4

7-3

9*6

8/2

3**2

Exercice 2.1 : Faire un calcul

Tape le script qui affichera :

Le résultat de la multiplication de 15 par 42.

N'oublie pas le commentaire.

3. Associer une valeur à une variable

Attention ! Pour nommer une variable, il faut seulement utiliser :

Les lettres de l'alphabet sans accent sont autorisées.

OUI : a b c d e f... z

NON : é à ù...

Les majuscules sans accent sont autorisées.

OUI : A B C D E F... Z

NON : Ä Ô...

Pas d'espaces ou de caractères spéciaux mais seulement - ou _

OUI : p_toto ou pToto

NON : % @ &...

Exemples de noms de variables :

Nom de variable autorisée :
animalPrefere

Nom de variable autorisée :
animal_prefere

Non autorisé :
Animal Préféré

Les exemples ci-dessous sont à lire et à faire.

Objectif

Python

Scratch

Créer une variable

Inutile dans python

Associer une valeur à une variable

mon_age=15

Incrémenter une variable

mon_age=mon_age+1

Exercice 3.1 : Utiliser plusieurs variables

Tape le script

Utilise la variable AnneeNaissance, donne lui la valeur qui correspond à l'année de naissance de ton père ou de ta mère ou de ton frère ou de ta sœur ou de ton cousin ou de ton ami...

Crée une variable Age pour calculer son âge en 2021.

Affiche une phrase qui donne l'âge de la personne que tu as choisie. Exemple : Mon ami Pierre a 16 ans. Tu utiliseras évidemment la variable Age pour cela.

N'oublie pas le commentaire.

Bilan intermédiaire - QCM numéro 1

Remplis le QCM et note le résultat dans la fiche-réponses si le(la) professeur(e) t'a demandé de l'utiliser.


4. Poser une question et associer la réponse à une variable.

Les exemples ci-dessous sont à lire et à faire.

Objectif

Python

Scratch

Demander du texte.

nom_ville=input(“Dans quelle ville habites-tu ?”)

Demander une valeur numérique entière

5 par exemple

nb_habitants=int( input(“Quel est le nombre d'habitants ?"))

La réponse attendue est un nombre entier.

Demander une valeur numérique décimale

1.67 par exemple

taille=float( input(“Quelle est ta taille en m ?”))

La réponse attendue est un nombre décimal. IL FAUT UTILISER UN POINT . ET NON UNE VIRGULE ,

Exercice 4.1 : Poser une question

Tape le script

Demande le prénom d'un élève.

Demande son âge

Fais une phrase du type Toto a 8 ans. Bien sûr la phrase affichée dépendra des réponses données aux deux questions posées.

Ca ne te sera plus rappelé, mais n'oublie jamais le commentaire.

Exercice 4.2 : Calcul d'une aire.

Tape le script

Demande la longueur en cm d'une table.

Demande la largeur en cm d'une table.

Une troisième variable n'est pas obligatoire, mais elle peut améliorer le programme.

Affiche L'aire de la table est XXXXX cm², sachant que XXXX correspond au résultat du calcul.

Exemple : L'aire de la table est 12400 cm²

5. Instructions conditionnelles.

Les exemples ci-dessous sont à lire et à faire.

Objectif

Python

Scratch

si... alors

taille=120
if taille >= 100:
print("Grand modèle")

Change la valeur de taille. Remplace 2 par d'autres nombres pour faire plusieurs tests.

si... alors... sinon

taille=80

if taille >= 100:

print("Grand modèle")

else :

print("Petit modèle")

Change la valeur de taille. Remplace 80 par un nombre supérieur à 100 et regarde le résultat.

Attention pour les tests :

Ne pas oublier les deux points : en fin de ligne.

Ne pas oublier le décalage de 4 espaces ou d'une tabulation.

==

Egal à

>

Strictement supérieur

!=

Différent de

<=

Inférieur ou égal

  • Arrêter une boucle

  • if... else... elif...

Exercice 5.1 : Si... alors...

Demande l'âge d'une personne.

  • Lui souhaiter la "bienvenue" si elle à 16 ans ou plus.

Exercice 5.2 : Si... alors... sinon...

Demande un code d'accès à une personne.

  • s'il correspond au bon code que tu as mis dans ton programme, il faut dire : "Vous allez être servi(e)".

  • s'il n'est pas bon, il faut dire : "Vous ne pouvez pas être servi(e)".

6. Répéter les instructions.

Objectif

Python

Scratch

Répéter une instruction ou une suite d'instructions plusieurs fois.

for counter in range(5):

print("toto")

Comme dans scratch, on peut utiliser une variable qui va être incrémentée (+1 par exemple) à chaque tour.

Saut=0

for counter in range(6):

Saut=Saut+1

print(Saut)

Ne pas oublier les deux points : en fin de ligne.

Ne pas oublier le décalage de 4 espaces ou d'une tabulation pour les lignes à répéter.

On n'est pas obligé d'utiliser counter. Cela aurait aussi bien fonctionné avec n'importe quel mot. On a bien-sûr besoin de plusieurs mots différents quand on souhaite insérer une boucle dans une autre boucle.

(counter, ou tout autre mot, est en fait d'une variable dans laquelle va se stocker le nombre de répétitions.)

Comme dans scratch, on peut utiliser une variable qui va être incrémentée (+5 par exemple) à chaque tour.

Exercice 6.1

Affiche 1 puis 2 puis 3 puis 4... jusqu'à 50

Il y a plusieurs méthodes. Si le programme affiche les nombres de 0 à 49 et non de 1 a 50. Ce n'est pas exactement ce que tu souhaitais.

Essaye à nouveau.

Si tu as toujours les nombres de 0 à 49, ce n'est pas grave. Passe à l'exercice suivant.

Exercice 6.2

Demande le code à une personne.

  • si le code est bon, il faut lui dire : "Vous allez être servi(e)".

  • s'il n'est pas bon, redemander le code.

  • Au bout de trois erreurs, lui dire : "Accès refusé." et arrêter le programme.

Aide : break arrête le programme . Break est très utile quand tu veux arrêter le programme quand une condition est ou n'est pas satisfaite.

Exercice 6.3 - Exercice difficile que tu es probablement capable de faire.

Demande à l'utilisateur quelle table de multiplication l'intéresse.

  • Si la réponse est 3, afficher :

    • 3x1=3

    • 3x2=6

    • 3x3=9

    • 3x4=12

    • ...

    • jusqu'à 3x10=30

Ce programme doit être valable pour n'importe quelle table de multiplication et doit utiliser une boucle.


Bilan final - QCM numéro 2

Remplis le QCM et note le résultat dans la fiche-réponses si le(la) professeur(e) t'a demandé de l'utiliser.




Partie 2

Seulement pour les élèves qui ont terminé tous les exercices de la partie 1

7. Quelques nouveautés

Objectif

Python

Scratch

Faire attendre le programme

import time doit être tapé au début du programme, après le commentaire.

time.sleep(3) fait attendre le programme pendant 3 secondes.

Dessiner

EDUPYTHON

DANS EDUPYTHON

from turtle import* doit être tapé au début du programme, après le commentaire.

forward(50) avance de 50 pixles

right(45) tourne à droite de 45 degrés

left(60) tourne à gauche de 60 degrés.

Dessiner

GOOGLE.COLAB

DANS GOOGLE.COLAB

!pip3 install ColabTurtle

from ColabTurtle.Turtle import*

initializeTurtle()

doit être tapé au début du programme, après le commentaire.

Les trois lignes de commande ci-dessus doivent être tapées au début du programme, après le commentaire et executées !

On peut ensuite programmer un déplacement.

forward(50) avance de 50 pixles

right(45) tourne à droite de 45 degrés

left(60) tourne à gauche de 60 degrés.

bibliothèques (ou modules)

Une bibliothèque (ou module) est un code fournissant des fonctionnalités supplémentaires à Python. Il en existe un très grand nombre : calcul numérique, graphisme, programmation internet ou réseau, formatage de texte, génération de documents…

  • Le module turtle pour le graphisme (vu ci-dessus),

  • Le module math pour le calcul numérique. Exemple : sqrt(), pi...

Exercice 7.1 - Insérer une attente.

Demande un nombre.

Demande un autre nombre.

Attends 5 secondes avant d'afficher le résultat de l'addition de ces deux nombres.

8. faire un projet au choix.

Projet 8.1 - DIFFICULTÉ ****

Demander le code à d'une personne.

  • si le code est bon, il faut lui dire : "Vous allez être servi(e)".

  • s'il n'est pas bon, lui dire : "Veuillez retaper votre code".

  • Au bout de trois erreurs, lui dire : "Accès refusé" et arrêter le programme.

Au bout de 15 secondes, il peut recommencer.

Projet 8.2 - DIFFICULTÉ ***

Projet 8.2

Demande la taille d'un segment

Dessine une étoile comme ci-contre en utilisant la réponse précédente pour la longueur des segments. La rotation au bout d'un segment est de 144 degrés.

Projet 8.2 bis

Demande aussi le nombre de répétitions et dessine de belles formes.

Projet 8.3 - DIFFICULTÉ *****

Dessine la forme ci-contre. Tu as besoin de regarder la bibliothèque turtle,

Projet 8.4 - DIFFICULTÉ ****

Ce programme fournit un nombre aléatoire de 1 à 20, qu'il faut ensuite deviner.

Par essais successif, le joueur va savoir si le nombre qu'il propose est supérieur ou inférieur au nombre recherché.

Le programme annonce quand il a trouvé.


Partie 3

Seulement pour les élèves qui ont terminé tous les exercices de la séquence 2

S'entraîner sur France ioI

Ce travail se fait en autonomie sans le professeur. Tu es maintenant assez autonome pour faire tes recherche et progresser seul(e). Les premiers exercices te paraîtrons très simple.

LIEN POUR FRANCE IOI

Table de matières la page