Laurentvidal.fr simplifie votre recherche de solutions aux questions quotidiennes et complexes avec l'aide de notre communauté. Découvrez la facilité de trouver des réponses fiables à vos questions grâce à une vaste communauté d'experts. Explorez des milliers de questions et réponses fournies par une large gamme d'experts dans divers domaines sur notre plateforme de questions-réponses.
Sagot :
Réponse :
Bonsoir,
Alors déjà on ne dit pas crypter en Français, on dit chiffrer :)
Voici la fonction de chiffrement et déchiffrement avec la méthode Cesar:
ATTENTION: tu devras éditer 'c h r( o r d (letter)+decalage )' et
'c h r( o r d (letter)-decalage )' dans chacune des fonctions pour enlever les espaces. Merci Caylus :)
# -*- coding: utf-8 -*-
"""
Created on Tue Mar 15 19:32:44 2022
@author: HP
"""
def chiffrer(texte, decalage, sens):
chiffrement=[]
for letter in texte:
if letter ==' ':
chiffrement.append(' ')
continue
if sens =="gauche-droite":
chiffrement.append(c h r( o r d (letter)+decalage ))
elif sens=="droite-gauche":
chiffrement.append(c h r( o r d (letter)-decalage ))
else:
print ("L'argument décalage doit être 'droite-gauche' ou 'gauche-droite'. ")
return
return ''.join(chiffrement)
def dechiffrer(texte, decalage, sens):
chiffrement=[]
for letter in texte:
if letter ==' ':
chiffrement.append(' ')
continue
if sens =="gauche-droite":
chiffrement.append(c h r(o r d (letter)-decalage ))
elif sens=="droite-gauche":
chiffrement.append(c h r(o r d (letter)+decalage ))
else:
print ("L'argument décalage doit être 'droite-gauche' ou 'gauche-droite'. ")
return
return ''.join(chiffrement)
texte_chiffre=chiffrer("Bonjour, ça va ?",3,'gauche-droite')
texte_dechiffre=dechiffrer(texte_chiffre,3,'gauche-droite')
print (texte_chiffre)
print (texte_dechiffre)
Explications :
Tout d'abord, sache que la fonction déchiffrer fait juste l'inverse de chiffrer, ça m'évite quelques explications.
La fonction chiffrer prend en arguments texte, c'est le texte à chiffrer, ensuite decalage, c'est nombre qui définit de combien on décale une lettre dans l'alphabet, enfin sens, c'est le sens du décalage, si on choisit gauche-droite, le décalage s'effectue de gauche à droite, et droite-gauche, le décalage s'effectue de droite à gauche.
Dans la fonction chiffrer, on déclare la variable chiffrement, c'est une liste qui contiendra le texte chiffré lettre par lettre, on utilise ensuite une boucle for pour chaque lettre du texte, si la lettre est un espace, on ajoute un espace dans chiffrement et on recommence le tour de boucle, sinon on vérifie le sens, si le sens est de gauche à droite 'droite-gauche', on se sert de l'unicode du caractère de la lettre qu'on incrémente en additionnant l'unicode à l'argument decalage,
si le sens est de droite à gauche 'gauche-droite', on se sert de l'unicode du caractère de la lettre qu'on incrémente en soustrayant l'unicode à l'argument decalage,
Enfin on retourne la variable chiffrement comprenant le texte chiffré, en chaîne de caractères.
Merci d'avoir choisi notre service. Nous nous engageons à fournir les meilleures réponses à toutes vos questions. Revenez nous voir. Nous espérons que nos réponses vous ont été utiles. Revenez quand vous voulez pour obtenir plus d'informations et de réponses à d'autres questions. Nous sommes ravis de répondre à vos questions sur Laurentvidal.fr. N'oubliez pas de revenir pour en savoir plus.