Les projets !

1. Projet conjugaison :

Le but est de créer une fonction conjuguer(verbe,mode,temps,auxiliaire).

Votre code commencera avec votre nom et votre prénom en commentaire.

Puis une deuxième ligne de commentaire expliquant ce que vous avez implémenté ( quel temps etc).

On pourra utiliser la commande verbe[:-2] qui permet de tronquer la terminaison et connaitre le radical.

Le travail peut être fait à deux.

Voici le début du programme :

#nom prenom de l'eleve

# ce qui a été implémenté (j'ai codé le présent etc.. j'ai géré les verbes type manger etc....)


def conjuguer(verbe, mode, temps, auxiliaire):
        if verbe[-2:]=="er":
            radical=verbe[:-2]
            if mode=="indicatif":
                if temps=="présent":
                    print("je "+radical+"e")
                    print("tu "+radical+"es")
                    ..
                    ..
                    ..
                    ..
                if temps=="futur":
                    ...
                    ...
    

Ainsi, par exemple :

>>> conjuguer("marcher","indicatif","futur","avoir")
je marcherai
tu marcheras
il/elle marchera
nous marcherons
vous marcherez
ils/elles marcheront
>>> conjuguer("tomber","indicatif","passé composé","être")
je suis tombé(e)
tu es tombé(e)
il est tombé
elle est tombée
nous sommes tombé(e)s
vous êtes tombé(e)s
ils sont tombés
elles sont tombées

2. Projet HTML :

Voir chapitre HTML

3. Projet javascript :

Voir chapitre javascript

4. Projet dictionnaires :

  1. Ecrire une fonction dico_des_mots(texte) qui prend comme argument un grand texte sous la forme d'un string et renvoie un dictionnaire où les clefs sont les mots du texte et la valeur associée est le nombre de fois où il apparait.

  2. Ecrire une fonction top_k(dico,k) qui prend comme argument un dictionnaire comme celui généré par la fonction précédente et qui affiche les k premiers mots les plus utilisés ainsi que leurs occurences.

5. Projet pendu:

Nous allons nous intéresser à la programmation d'un jeu nommé le jeu du pendu.

Pour rappel, le but est de deviner un mot en donnant des lettres au fur et à mesure.

Afin de rendre le jeu intéressant, nous allons importer une liste de mot à partir d'un fichier csv.

  1. Télécharger le fichier csv contenant plusieurs mots français.
  2. Compléter le code suivant :

    import os
    os.chdir("U:\\")   #chemin à modifier
    
    
    import csv
    import random
    import time
    import unicodedata
    
    def import_depuis_csv():
        liste_mots=[]
        nomfichier="liste_mots.csv"
        with open(nomfichier, 'r', newline='', encoding='utf-8') as fichier:
            reader = csv.reader(fichier)
            for ligne in reader:
                mot = unicodedata.normalize("NFC", ligne[0])
                liste_mots.append(mot)
        return liste_mots
    
    
    
    
    
    def pendu():
        liste_mots=import_depuis_csv()

6. Morpion:

Le but est de programmer en Python le jeu du morpion.

Nous appelerons grille une liste de listes.

Le jeu se joue seul contre la machine.

Le joueur "humain" jouera le symbole "X" et jouera toujours le premier en début de partie.

Ainsi :

On pourra notamment programmer les fonctions suivantes :

7. Pyxel:

On souhaite développer un jeu à l'aide du module Pyxel. C'est notamment ce module qui est utilisé pour la nuit du code.

On manipule deux fichiers :

L'architecture de base ressemble à cela :

import pyxel
pyxel.init(200,200, title="mon titre") # vous pouvez modifier les valeurs 200 et le titre

une_premiere_valeur="quelque chose"
une_deuxieme_valeur="autre chose"


# chargement des images
pyxel.load("mon_du_fichier_qui_finit_en_pyxres.pyxres")


# =========================================================
# == UPDATE
# =========================================================
def update():
    """mise à jour des variables (30 fois par seconde)"""

    global une_premiere_valeur,une_deuxieme_valeur

    #on fait des calculs


# =========================================================
# == DRAW
# =========================================================
def draw():
    #on dessine des trucs

pyxel.run(update, draw)    

Voici 6 thèmes que vous pouvez utiliser (mais ce n'est pas obligé) :

Pour coder, vous pouvez soit utiliser Pyzo, soit le site https://www.pyxelstudio.net/.

Le projet peut se faire par deux ou trois.