Algorithmique et programmation1ère

Introduction à Python
Exercices corrigés

Maîtrisez les bases de Python : variables, structures conditionnelles, boucles, fonctions et listes grâce à ces 5 exercices détaillés.

Concepts & Exercices
Python
Langage de programmation
Variable
x = 5
Affectation de valeur
Conditionnelle
if x > 0:
Structure conditionnelle
Boucle
for i in range(5):
Boucle itérative
Fonction
def nom():
Déclaration de fonction
Liste
liste = [1, 2, 3]
Structure de données
🐍
Python : Langage de programmation interprété, orienté objet.
📊
Variables : Conteneurs qui stockent des données.
🔍
Indentation : Structure les blocs de code en Python.
Syntaxe : Lisible et proche du langage naturel.
Exercice 1
Manipulation de variables et opérations
Exercice 2
Structures conditionnelles et tests
Exercice 3
Boucles while et for
Exercice 4
Définition et utilisation de fonctions
Exercice 5
Manipulation de listes
Corrigé : Exercices 1 à 3
1 Variables et opérations
Définition :

Variable : Nommage d'une zone mémoire pour stocker une valeur.

Méthode d'affectation :
  1. Nommer la variable (règles : lettres, chiffres, underscore)
  2. Utiliser l'opérateur = pour affecter une valeur
  3. Effectuer des opérations arithmétiques
a = 10
b = 3
somme = a + b
produit = a * b
quotient = a // b
reste = a % b
print("Somme:", somme)
print("Produit:", produit)
print("Quotient:", quotient)
print("Reste:", reste)
Affectation
a = 10
Calcul
a + b
Résultat
13
Étape 1 : Déclaration des variables

a = 10 et b = 3 créent deux variables avec leurs valeurs

Étape 2 : Opérations arithmétiques

somme = a + b : addition

produit = a * b : multiplication

quotient = a // b : division entière

reste = a % b : modulo (reste de la division)

Étape 3 : Affichage des résultats

La fonction print() affiche les résultats à l'écran

Sortie: Somme: 13, Produit: 30, Quotient: 3, Reste: 1
Réponse finale :

Les opérations arithmétiques produisent les résultats suivants : somme=13, produit=30, quotient=3, reste=1.

Règles appliquées :

Nommage : Les variables commencent par une lettre ou underscore

Types : Python détermine automatiquement le type de la variable

Opérations : +, -, *, /, // (division entière), % (modulo)

2 Structures conditionnelles
Définition :

Structure conditionnelle : Exécute un bloc de code selon qu'une condition est vraie ou fausse.

note = float(input("Entrez votre note: "))
if note >= 10:
    print("Admis!")
elif note >= 8:
    print("Rattrapage possible")
else:
    print("Non admis")
Entrée
note = 12
Test
>= 10
Sortie
"Admis!"
Étape 1 : Saisie de la donnée

input() permet à l'utilisateur d'entrer une valeur

float() convertit la chaîne en nombre décimal

Étape 2 : Évaluation de la condition

if note >= 10: teste si la condition est vraie

Si vrai, exécute le bloc indenté sous le if

Étape 3 : Branchement alternatif

elif : test supplémentaire si le premier est faux

else : exécuté si aucune condition n'est remplie

Note ≥ 10 → "Admis!", 8 ≤ Note < 10 → "Rattrapage possible", Note < 8 → "Non admis"
Réponse finale :

Le programme affiche le statut de l'étudiant selon sa note.

Règles appliquées :

Indentation : Les blocs de code sont définis par l'indentation

Opérateurs relationnels : ==, !=, <, >, <=, >=

Structure : if → elif → else (optionnel)

3 Boucles while et for
Définition :

Boucle : Répète un bloc d'instructions tant qu'une condition est remplie.

# Boucle while
n = 5
while n > 0:
    print(n)
    n = n - 1
print("Décollage!")

# Boucle for
for i in range(5):
    print("itération", i)
Init
n = 5
Boucle
while n > 0
Compteur
n = n - 1
Étape 1 : Boucle while

Initialise n = 5

Tant que n > 0 est vrai, exécute le bloc

Décrémente n à chaque itération

Étape 2 : Boucle for

range(5) crée une séquence de 0 à 4

La variable i prend successivement les valeurs 0, 1, 2, 3, 4

Étape 3 : Contrôle de la boucle

Assurer un changement de condition pour éviter boucle infinie

While: 5, 4, 3, 2, 1, "Décollage!" - For: "itération 0" à "itération 4"
Réponse finale :

Les boucles permettent de répéter des actions un nombre connu ou inconnu de fois.

Règles appliquées :

While : Utilisé quand le nombre d'itérations est inconnu

For : Utilisé pour parcourir des séquences

Contrôle : Toujours modifier la condition pour éviter boucle infinie

Corrigé : Exercices 4 à 5
4 Fonctions
Définition :

Fonction : Bloc de code réutilisable qui effectue une tâche spécifique.

def surface_cercle(rayon):
    """Calcule la surface d'un cercle"""
    pi = 3.14159
    return pi * rayon * rayon

def maximum(a, b):
    """Retourne le maximum de deux nombres"""
    if a > b:
        return a
    else:
        return b

# Appel des fonctions
surf = surface_cercle(5)
max_val = maximum(10, 7)
print("Surface:", surf)
print("Maximum:", max_val)
Définition
def nom():
Paramètres
(rayon)
Retour
return
Étape 1 : Déclaration de la fonction

def nom_fonction(paramètres): définit la fonction

Le bloc de code indenté est le corps de la fonction

Étape 2 : Paramètres et retour

Les paramètres reçoivent les valeurs lors de l'appel

return renvoie une valeur et termine la fonction

Étape 3 : Appel de la fonction

nom_fonction(valeurs) exécute la fonction avec les arguments fournis

surface_cercle(5) → 78.54, maximum(10, 7) → 10
Réponse finale :

Les fonctions organisent le code et favorisent la réutilisabilité.

Règles appliquées :

Portée : Variables locales à la fonction

Documentation : Commentaires entre """ pour expliquer la fonction

Modularité : Découpage du problème en sous-problèmes

5 Listes
Définition :

Liste : Structure de données ordonnée pouvant contenir différents types d'éléments.

notes = [12, 15, 8, 19, 10]
print("Notes:", notes)
print("Première note:", notes[0])
print("Dernière note:", notes[-1])

# Ajouter un élément
notes.append(14)
print("Ajout de 14:", notes)

# Parcourir la liste
total = 0
for note in notes:
    total += note
moyenne = total / len(notes)
print("Moyenne:", moyenne)

# Tri de la liste
notes.sort()
print("Notes triées:", notes)
Création
[12, 15, 8...]
Accès
notes[0]
notes[-1]
Étape 1 : Création de la liste

liste = [élément1, élément2, ...] crée une liste

Les indices commencent à 0

Étape 2 : Accès aux éléments

liste[index] accède à l'élément à l'index spécifié

liste[-1] accède au dernier élément

Étape 3 : Opérations sur les listes

append() ajoute un élément à la fin

len() renvoie la longueur de la liste

sort() trie les éléments

Liste: [12, 15, 8, 19, 10, 14], Moyenne: 13.0, Triée: [8, 10, 12, 14, 15, 19]
Réponse finale :

Les listes sont des structures de données polyvalentes pour stocker des collections.

Règles appliquées :

Indices : Commencent à 0, négatifs pour compter depuis la fin

Méthodes : append(), sort(), reverse(), insert(), remove()

Itération : Possibilité de parcourir avec for

Cours bien détaillé
Python
Programmation structurée
🎯
Variables : Noms qui désignent des objets en mémoire.
📊
Structures : Conditionnelles (if), boucles (while, for).
📐
Fonctions : Blocs réutilisables de code avec paramètres.
📝
Listes : Collections ordonnées modifiables d'éléments.
Affectation
x = 5
Assignation de valeur
Conditionnelle
if x > 0: ...
Structure de contrôle
Boucle for
for i in range(5):
Répétition bornée
Fonction
def nom(): ...
Sous-programme
Liste
lst = [1, 2, 3]
Structure de données
💡
Conseil : Utilisez des noms de variables explicites
🔍
Attention : Respectez l'indentation (4 espaces)
Astuce : Utilisez des commentaires pour documenter votre code
📋
Méthode : Testez votre code fréquemment
Vérification : Vérifiez les erreurs de syntaxe
🔄
Optimisation : Réutilisez les fonctions pour éviter duplication
Bonnes pratiques :
  • Nommage : Utiliser des noms en snake_case (ex: ma_variable)
  • Commentaires : Expliquer le code complexe avec #
  • Docstrings : Documenter les fonctions avec """ """
  • Indentation : 4 espaces par niveau d'imbrication
Règles importantes :
  • Python est sensible à la casse (variable ≠ Variable)
  • L'indentation délimite les blocs de code (pas d'accolades)
  • Les variables n'ont pas besoin d'être déclarées explicitement
  • Les listes peuvent contenir des éléments de types différents
Introduction à Python Applications de programmation