Accueil > Python au lycée > Exemples

Exemples

Dernier ajout : 14 juin 2015.

Articles de cette rubrique

    14 juin 2015

  • Une opération avec 8 cartes avec Python

    L’objectif

    On dispose de 8 cartes symbolisant les chiffres de 1 à 8.

    En utilisant toutes les cartes une seule fois, on cherche des multiplications du type :

    *** x * = ****

    Une des possibilités est :

    453 x 6 = 2 718

    Pour information, il en existe deux !

    La solution


  • 20 décembre 2012

  • Premier multiple au dessus d’un seuil avec Python

    Le problème

    A l’aide d’un algorithme, trouver le premier multiple d’un entier (disons 37), supérieur à un seuil donné (disons 1 million).

    En fonction des outils disponibles, différentes solutions sont possibles.

    En utilisant des additions

    C’est la solution proposée par mes élèves qui ont vite voulu calculer les différents multiples de 37.

    En utilisant des produits

    Très vite, des élèves ont voulu une solution avec des multiplications et ont proposé cet algorithme qui ne fonctionne pas :

    Voici la correction :

    En utilisant la division euclidienne

    On peut imaginer des solutions avec des boucles mais c’est inutile :

    En utilisant le reste de la division euclidienne


  • 7 décembre 2010

  • Un exemple pour débuter en Python

    L’objectif du programme


    Ce petit programme va nous permettre de voir les principales caractéristiques de ce langage.

    On veut simuler un programme comme ceux que l’on rencontre au collège :
    - on choisit une valeur ;
    - on ajoute 2 ;
    - on multiplie par 2 ;
    - on obtient le résultat final.

    Version 1


    Pour l’instant, on suit pas à pas ce que nous demande l’exercice précédemment décrit.

    On ouvre le programme Python (IDLE). On édite un nouveau programme que l’on nomme version1.py. Attention, tous les fichiers python doivent obligatoire avoir comme extension ".py".

    On sauvegarde ce fichier version1.py et on le lance en appuyant sur F5.

    On obtient dans la fenêtre d’exécution :

    >>>
    30
    >>>

    Pour l’instant, rien de très sensationnel. Les élèves sont déçus ... Tout ça pour ça ?

    A ce niveau, on peut juste parler des variables, notamment de qui se passe avec "resultat".

    Version 2


    Tout d’abord, on va essayer de soigner la présentation du résultat :

    On sauvegarde ce fichier version2.py et on le lance en appuyant sur F5.

    On obtient dans la fenêtre d’exécution :

    >>>
    Quand x vaut 13 , le résultat vaut 30 !
    >>>

    C’est déjà mieux ! Les élèves s’amusent à modifier la mise en forme du résultat :

    >>>
    Quand le mage dit 13 , l'écho répond 30 !
    >>>

    ou pour les matheux :

    >>>
    f( 13 )=30
    >>>

    Version 3


    Le gros inconvénient pour l’instant est de devoir choisir la valeur de "x" dans le programme. Tentons d’y remédier :

    On sauvegarde ce fichier version3.py et on le lance en appuyant sur F5. On me demande de rentrer la valeur de x. je choisis par exemple 7.

    On obtient dans la fenêtre d’exécution :

    >>>
    Rentrer la valeur de x : 7
    Quand x vaut 7 , le résultat vaut 18 !
    >>>

    Ça s’améliore. Pas vite, mais on progresse ...

    Une petite explication : x=int(raw_input("Rentrer la valeur de x : ")) signifie que l’on demande une valeur à l’utilisateur (raw_input) puis on la convertit en un entier. x est donc un entier.

    Version 4


    Créons maintenant une boucle pour continuer de calculer des résultats pour différentes valeurs de x.

    On sauvegarde ce fichier version4.py et on le lance en appuyant sur F5.

    On obtient dans la fenêtre d’exécution :

    >>>
    Le programme va vous demander de choisir en bouche des valeurs de x.
    Pour sortir, il suffira de choisir la valeur 0.


    Rentrer la valeur de x : 4
    Quand x vaut 4 , le résultat vaut 12 !


    Rentrer la valeur de x : 3
    Quand x vaut 3 , le résultat vaut 10 !


    Rentrer la valeur de x : 0
    Quand x vaut 0 , le résultat vaut 4 !


    Happy end !
    >>>

    Une boucle ! Ça ressemble enfin à un programme.

    Il faut vraiment ici insister sur les tabulations qui existent sur les lignes qui suivent le "while". C’est ce décalage qui va indique jusqu’où le bloc va aller. Ainsi, la ligne finale n’est pas décalée. Elle est en dehors de la boucle.

    Les lignes print "\n" servent à faire un saut de ligne pour améliorer la présentation.

    Version 5


    On peut rajouter des petits tests sur le résultat :

    On sauvegarde ce fichier version5.py et on le lance en appuyant sur F5.

    On obtient dans la fenêtre d’exécution :

    >>>
    Le programme va vous demander de choisir en bouche des valeurs de x.
    Pour sortir, il suffira de choisir la valeur 0.


    Rentrer la valeur de x : 10
    Quand x vaut 10 , le résultat vaut 24 !
    Ce résultat est positif.


    Rentrer la valeur de x : -9
    Quand x vaut -9 , le résultat vaut -14 !
    Ce résultat est négatif.


    Rentrer la valeur de x : -2
    Quand x vaut -2 , le résultat vaut 0 !
    Ce résultat est nul.


    Rentrer la valeur de x : 0
    Quand x vaut 0 , le résultat vaut 4 !
    Ce résultat est positif.


    Happy end !
    >>>

    A noter encore une fois l’importance des décalages pour délimiter les tests.

    Version 6


    Enfin, on peut séparer la définition de la fonction du reste du programme. ce sera plus simple pour la modifier.

    On sauvegarde ce fichier version6.py et on le lance en appuyant sur F5.

    On obtient dans la fenêtre d’exécution :

    >>>
    Le programme va vous demander de choisir en bouche des valeurs de x.
    Pour sortir, il suffira de choisir la valeur 0.


    Rentrer la valeur de x : 3
    Quand x vaut 3.0 , le résultat vaut 10.0 !
    Ce résultat est positif.


    Rentrer la valeur de x : 0
    Quand x vaut 0.0 , le résultat vaut 4.0 !
    Ce résultat est positif.


    Happy end !
    >>>

    A noter l’utilisation désormais du format de nombres "float" au lieu de "int". C’est fortement recommandé pour éviter des soucis. En effet, si on demande à Python de faire une opérations entre des entiers, il donne un résultat entier comme "5/3" qui donne comme résultat "1". Mieux vaut taper "5./3.".

    Version 7


    Une dernière version pour montrer l’utilisation de la librairie mathématique.

    On sauvegarde ce fichier version7.py et on le lance en appuyant sur F5.

    On obtient dans la fenêtre d’exécution :

    >>>
    Le programme va vous demander de choisir en bouche des valeurs de x.
    Pour sortir, il suffira de choisir la valeur 0.


    Rentrer la valeur de x : -3
    Il faut une valeur positive ou nulle !


    Rentrer la valeur de x : 5
    f( 5.0 )= 2.2360679775

    Rentrer la valeur de x : 0
    f( 0.0 )= 0.0

    Happy end !
    >>>

  • 31 juillet 2010

  • Comptage des voyelles dans un mot avec Python

    L’objectif du programme


    Ce petit programme va nous permettre de voir comment on manipule facilement les chaînes de caractères avec Python.

    Dans la boucle principale, on demande à l’utilisateur de saisir un mot. Le programme affiche alors le nombre de voyelles du mot donné.

    Pour sorti de cette boucle, l’utilisateur doit rentrer le mot "fin".

    Le code


    Quelques explications


    - Pour transformer toutes les lettres en minuscules, on a utiliser la méthode .lower() qui s’applique aux chaînes de caractères. Il y a aussi la méthode .upper() qui fait le contraire.
    - Dans la boucle, la variable lettre va successivement prendre comme valeur chaque lettre du mot.
    - On utilise le mot-clé in dans la condition.


SPIP | | Plan du site | Suivre la vie du site RSS 2.0