Algorithmes gloutons

Au programme de la classe de première

Contenus Capacités attendues Commentaires
Algorithmes gloutons Résoudre un problème grâce à un algorithme glouton. Exemples : problèmes du sac à dos ou du rendu de monnaie. Les algorithmes gloutons constituent une méthode algorithmique parmi d’autres qui seront vues en terminale.

Documents

Tester ses fonctions avec 'assert'

Chapitre 5,1

Dans le document 5,1, nous avons insisté sur l’importance de la spécification d’une fonction et sur celle d’un jeu de tests. Dans ce document, nous allons découvrir une nouvelle façon de tester ses fonctions. Le mot clé assert Le mot clé assert est utilisé afin de s’assurer de la robustesse d’une fonction. Il ne doit jamais être utilisé au sein d’un programme pour lever une exception ; il ne faut donc pas le confondre avec le mot clé raise. [Lire]

Contrôle du flot d'exécution d'un programme : structures iteratives

Chapitre 4,2

Ce chapitre reprend l’étude de structures de contrôles, c’est à dire d’instructions qui permettent de modifier le « flot d’exécution implicite » d’un programme. Après les structures conditionnelles (ou alternatives), les structures itératives (ou boucles) sont introduites. Introduction Les boucles sont des instructions répétitives. Comme les tests conditionnels, elles nécessitent la définition de blocs d’instructions. Les instructions de ces blocs sont répétées tant qu’une condition d’arrêt n’est pas vérifiée. Chaque passage dans la boucle s’appelle une itération. [Lire]

Contrôle du flot d'exécution d'un programme : l'alternative

Chapitre 4,1

Booléens et expressions booléennes Une grandeur booléenne est une grandeur qui ne peut prendre que deux valeurs : Vrai ou Faux, ou 0 ou 1, ou …). Dans le langage Python, les valeurs booléennes s’écrivent True et False. La fonction bool transforme n’importe quel argument en valeur booléenne — tout argument à valeur nulle (entier 0, flottant 0.0, chaîne de caractères "", liste vide list(), etc.) est converti en valeur False, toute autre valeur pour l’argument devient la valeur True. [Lire]

Recherche d'un réactif limitant à l'aide d'un programme écrit en Python

On réalise l’oxydation des ions fer II $\ce{Fe^{2+} (aq)}$ par des ions permanganate $\ce{MnO4^- (aq)}$ en milieu acide. Les couples oxydant/réducteur mis en jeu sont : $\ce{Fe^{3+}/Fe^{2+}}$ et $\ce{MnO4^-/Mn^{2+}}$. Montrer que l’équation de la réaction s’écrit : $$ \ce{5 Fe^{2+} (aq) + MnO4^- (aq) + 8 H^+ –> 5 Fe^{3+} (aq) + Mn^{2+} (aq) + 4 H2O } $$ On met en présence $\pu{10 mL}$ d’une solution de permanganate de potassium à la concentration $\pu{0,03 mol. [Lire]

Problème du sac à dos

Chapitre 23,02

Au programme

Algorithmique

Contenus Capacités attendues Commentaires
Algorithmes gloutons Résoudre un problème grâce à un algorithme glouton. Exemples : problèmes du sac à dos ou du rendu de monnaie. Les algorithmes gloutons constituent une méthode algorithmique parmi d’autres qui seront vues en terminale.

Algorithmes gloutons, problème du rendu de monnaie

Chapitre 23,01

Au programme Algorithmique Contenus Capacités attendues Commentaires Algorithmes gloutons Résoudre un problème grâce à un algorithme glouton. Exemples : problèmes du sac à dos ou du rendu de monnaie. Les algorithmes gloutons constituent une méthode algorithmique parmi d’autres qui seront vues en terminale. Introduction Les algorithmes gloutons forment une catégorie d’algorithmes permettant de parvenir à une solution pour un problème d’optimisation qui vise à maximiser/minimiser une quantité (plus court chemin (GPS), plus petite durée d’exécution, meilleure organisation d’un emploi du temps, etc. [Lire]

Langages et programmation

Chapitre 2,1

À quoi a-t-on accès lorsqu’on utilise un langage de programmation ? Un langage de programmation doit : fournir des objets (ou types) primitifs ; posséder une bibliothèque de fonctions prédéfinies ; permettre la manipulation des objets primitifs et des fonctions prédéfinies ; établir des règles qui permettent de construire de nouveaux objets (ou types) ou de nouvelles fonctions par combinaison des types primitifs et des fonctions prédéfinies. Nous allons aborder chacun de ces points. [Lire]