Achevia/ Seconde/ Maths 2de/ Algorithmique et programmation (Python)

CoursMathématiques · 2de

Algorithmique et programmation (Python)

Les mathématiques se font aussi avec un ordinateur. En seconde, on programme en Python : écrire des algorithmes, utiliser des variables, des boucles et des tests. Coder, c'est apprendre à décomposer un problème en étapes logiques.

Le cours

1. Algorithme et programme

L'algorithmique et la programmation font partie des mathématiques au lycée. Comprendre ce que sont un algorithme et un programme est essentiel, car ce sont des outils de plus en plus importants.

Un algorithme est une suite d'instructions précises permettant de résoudre un problème ou d'accomplir une tâche, étape par étape. On peut comparer un algorithme à une recette : une suite d'étapes à suivre dans l'ordre pour obtenir un résultat. Par exemple, un algorithme peut décrire comment calculer la moyenne de plusieurs nombres, ou comment trouver le plus grand d'une liste. Un programme est la traduction d'un algorithme dans un langage de programmation (comme Python), c'est-à-dire dans un langage compréhensible par un ordinateur, qui pourra alors exécuter les instructions. Écrire un programme permet de faire réaliser des calculs et des tâches par un ordinateur, de façon automatique et rapide. L'algorithmique et la programmation développent la logique, la rigueur et la capacité à décomposer un problème en étapes. Elles sont de plus en plus importantes, car l'informatique est présente partout, et savoir concevoir des algorithmes et programmer est une compétence précieuse. Comprendre ce que sont un algorithme et un programme, c'est aborder les bases de l'informatique et de la pensée algorithmique, essentielles aujourd'hui, et qui font désormais partie de la formation mathématique.

Comprendre ce que sont un algorithme et un programme est essentiel, car ce sont des outils de plus en plus importants. Ces notions sont fondamentales. Elles sont approfondies dans le supérieur, en informatique et dans de nombreuses disciplines, où l'algorithmique et la programmation sont essentielles.

Exemple

x = 5 met la valeur 5 dans la variable x ; x = x + 1 fait passer x à 6.

2. Les instructions conditionnelles

Les instructions conditionnelles permettent à un programme de faire des choix selon les situations. Comprendre cette notion est essentiel, car elle est à la base de la logique des programmes.

Une instruction conditionnelle permet à un programme d'exécuter différentes actions selon qu'une condition est vraie ou fausse. Elle s'exprime généralement par « si… alors… sinon… » : si une condition est remplie, le programme effectue certaines instructions ; sinon, il en effectue d'autres. Par exemple, un programme peut vérifier si un nombre est positif : « si le nombre est positif, alors afficher ‘positif’, sinon afficher ‘négatif ou nul’ ». Les instructions conditionnelles permettent ainsi au programme de s'adapter aux situations, de faire des choix, de réagir différemment selon les cas. Elles reposent sur des conditions, qui sont des tests pouvant être vrais ou faux (par exemple, « le nombre est-il supérieur à 10 ? »). Les instructions conditionnelles sont essentielles en programmation : elles donnent aux programmes la capacité de prendre des décisions, ce qui les rend bien plus puissants qu'une simple suite d'instructions toujours identiques. Elles sont à la base de la logique des programmes. Comprendre les instructions conditionnelles, c'est acquérir une notion fondamentale de la programmation, qui permet aux programmes de faire des choix et de s'adapter, essentielle pour concevoir des algorithmes et des programmes.

Comprendre les instructions conditionnelles est essentiel, car elles sont à la base de la logique des programmes. Cette notion est fondamentale. Elle est approfondie dans le supérieur, en informatique, où les structures conditionnelles sont essentielles à la programmation.

Exemple

if x > 0 : print('positif') else : print('négatif ou nul').

3. Les boucles

Les boucles permettent à un programme de répéter des instructions. Comprendre cette notion est essentielle, car elle est l'une des bases les plus puissantes de la programmation.

Une boucle permet de répéter plusieurs fois une même suite d'instructions, sans avoir à les réécrire. C'est très utile quand une tâche doit être répétée de nombreuses fois. Il existe deux grands types de boucles. La boucle « pour » (ou boucle bornée) répète des instructions un nombre de fois déterminé à l'avance (par exemple, répéter 10 fois une action). La boucle « tant que » (ou boucle non bornée) répète des instructions tant qu'une condition reste vraie (par exemple, tant qu'un nombre est inférieur à 100). Les boucles permettent d'automatiser des tâches répétitives : plutôt que d'écrire cent fois la même instruction, on écrit une boucle qui la répète cent fois. Par exemple, pour calculer la somme des nombres de 1 à 100, on peut utiliser une boucle qui ajoute successivement chaque nombre. Les boucles rendent les programmes puissants et concis : elles permettent de traiter de grandes quantités de données ou de répéter des calculs efficacement. Elles sont, avec les instructions conditionnelles, l'un des outils fondamentaux de la programmation. Comprendre les boucles, c'est acquérir une notion essentielle qui donne aux programmes la capacité de répéter des actions et d'automatiser des tâches, indispensable pour concevoir des algorithmes efficaces.

Comprendre les boucles est essentiel, car elles sont l'une des bases les plus puissantes de la programmation. Cette notion est fondamentale. Elle est approfondie dans le supérieur, en informatique, où les boucles sont essentielles à la conception des programmes.

Exemple

for i in range(5) : répète 5 fois (pour i = 0, 1, 2, 3, 4).

4. Les fonctions en programmation

En programmation, les fonctions permettent d'organiser et de réutiliser du code. Comprendre cette notion est essentielle, car elle est à la base d'une programmation structurée et efficace.

En programmation, une fonction est un bloc d'instructions regroupées, qui réalise une tâche précise et à laquelle on donne un nom. Une fois définie, la fonction peut être appelée (utilisée) autant de fois que nécessaire, simplement en indiquant son nom, sans avoir à réécrire toutes ses instructions. Par exemple, on peut définir une fonction qui calcule le carré d'un nombre, puis l'utiliser chaque fois qu'on en a besoin. Une fonction peut recevoir des informations en entrée (des paramètres) et renvoyer un résultat. Les fonctions présentent de grands avantages : elles évitent de répéter du code (on écrit la tâche une fois, on la réutilise), elles rendent les programmes plus clairs et mieux organisés (en découpant le programme en blocs ayant chacun un rôle), et elles facilitent la correction et la réutilisation. En programmation, on retrouve d'ailleurs l'idée mathématique de fonction : quelque chose qui, à partir d'entrées, produit un résultat. Les fonctions sont essentielles pour écrire des programmes structurés, lisibles et efficaces. Comprendre les fonctions en programmation, c'est acquérir une notion fondamentale qui permet d'organiser et de réutiliser le code, base d'une bonne pratique de la programmation, et aboutissement des bases de l'algorithmique au lycée.

Comprendre les fonctions en programmation est essentiel, car elles sont à la base d'une programmation structurée. Cette notion est fondamentale. Elle est approfondie dans le supérieur, en informatique, où les fonctions sont essentielles à l'organisation des programmes.

Exemple

def double(n) : return 2 * n — appeler double(4) renvoie 8.

Pour approfondir ce chapitrefacultatif

Définitions clés

Variable
Un nom associé à une valeur, que l'on peut modifier. En Python, l'affectation se note avec un seul signe égal : x = 5.
Boucle
Une structure qui répète des instructions : la boucle « for » répète un nombre connu de fois, la boucle « while » tant qu'une condition est vraie.
Condition (if)
Une instruction qui exécute un bloc seulement si une condition est vraie (if… else…).
Fonction (def)
Un bloc d'instructions réutilisable, défini avec le mot-clé def, qui peut renvoyer un résultat.

Explications détaillées

Variables, affectation et types

En Python, une variable reçoit une valeur par affectation : x = 5. Attention, le signe = n'est pas l'égalité mathématique : c'est « je range 5 dans x ».

Les valeurs ont un type : un entier (int), un nombre décimal (float), du texte (str), un booléen (True/False). Le type détermine les opérations possibles.

Boucles et conditions

La boucle « for » répète un nombre déterminé de fois ; la boucle « while » tant qu'une condition reste vraie. La condition « if… else » permet de choisir entre deux comportements.

En Python, l'indentation (le décalage du texte) délimite les blocs : elle n'est pas décorative, elle fait partie de la syntaxe. Un programme se teste toujours, puis se corrige.

Méthode pas à pas

Écrire un programme simple avec une boucle
  1. Identifier ce que le programme doit calculer.
  2. Initialiser les variables nécessaires (par exemple une somme à 0).
  3. Écrire la boucle qui répète le calcul, en respectant l'indentation.
  4. Afficher ou renvoyer le résultat, puis tester le programme.

Exemple corrigé pas à pas

Somme des entiers de 1 à n

Écrire un algorithme qui calcule la somme des entiers de 1 à n (par exemple, la somme 1 + 2 + … + n).

  1. On initialise une variable somme à 0.
  2. On parcourt les entiers i de 1 à n avec une boucle « for ».
  3. À chaque tour, on ajoute i à la somme : somme = somme + i.
  4. Après la boucle, la variable somme contient le résultat, que l'on affiche.

Erreurs fréquentes à éviter

  • Confondre = (affectation) et == (test d'égalité).En Python, x = 5 range 5 dans x ; x == 5 teste si x vaut 5.
  • Négliger l'indentation des blocs.En Python, l'indentation délimite les blocs : une erreur d'indentation empêche le programme de fonctionner.
  • Écrire une boucle « while » dont la condition reste toujours vraie.Il faut que la condition finisse par devenir fausse, sinon la boucle tourne indéfiniment.

Pour aller plus loin

Python, un langage partout

Python est l'un des langages les plus utilisés au monde : sciences des données, intelligence artificielle, sites web, automatisation, recherche scientifique. Apprendre à programmer développe aussi la « pensée algorithmique » — décomposer un problème en étapes claires — une compétence précieuse dans toutes les disciplines.

Ce qu'il faut absolument retenir

Ce qu'il faut absolument retenir

Vérifie ta compréhension

Exercice 1En Python, que fait l'instruction x = 5 ?

Exercice 2Comment teste-t-on l'égalité entre x et 5 en Python ?

Exercice 3Quelle boucle utilise-t-on quand on connaît le nombre de répétitions ?

Exercice 4En Python, « == » sert à comparer deux valeurs.

Exercice 5Que renvoie la fonction « def double(n) : return 2 * n » quand on appelle double(4) ?

Source officielle   Ministère de l'Éducation nationale — Programme officiel · FR-2019

L'essentiel en images

Récapitulatif illustré du cours