Menu


1NSI

Les exercices python à connaître

programme de première
E1 : listes
E2 : listes
E3 : listes
E4 : tri par insertion
E5 : tri par séléction
E6 : dictionnaires / string
E7 : tuple
E8 : boucle / booléen / liste
E9 : string
E10 : dictionnaire / fonctions
E11 : booléens / listes
récursivité
E1 : somme d'entiers
E2 : chiffres romains
E3 : factorielle
E4 : rendu de monnaie
POO
E1 : la classe Chien
E2 : carrés semi-magiques
E3 : filtre sur une pile
E4 : durées en POO
Arbres
E1: Hauteur et taille d'un arbre
E2: parcours 1
E3: parcours 2
E4: Recherche dans un ABR
E5: Arbre binaire additif
E6: Arbre binaire de recherche
Diviser pour régner
E1 : sommet d'un tableau
E2 : Indice d'une panne
E3 : calcul d'une puissance
Sécurisation des communications
E1 : code César
E2 : Vigenre

Vigenere

Le chiffre de César peut être cassé très facilement, même à l'aide du seul texte chiffré. Soit par la méthode d'analyse fréquentielle, soit (si l'on sait que l'on a affaire à un chiffre de césar) en testant toutes les clés possibles : il n'y en a que 26 !!
Pour rendre ce chiffrement plus robuste, Jean Trithème en 1518 propose une amélioration :

  • Une clé que l'on répéte à l'infini indique le décalage ;
Par exemple avec la clé 'ABCD' c'est à dire '1234' :
vigenere.png
Compléter la fonction `vigenere` qui permet de chiffrer un texte avec cette méthode.