Décryptage python
pauline20105
-
yg_be Messages postés 24281 Statut Contributeur -
yg_be Messages postés 24281 Statut Contributeur -
Bonjour,
Pour mon cours d'informatique, je dois modifier ce programme pour pouvoir décrypter un message:
message="cettematinéed’hiverestparticulièrementensoleillée"
n=len(message)
listk=[4,0,2,6,1,3,5]
maxi=len(listk)
for k in listk:
p=0
while k+p*maxi<=n-1:
print(message[k+p*maxi],end="")
p=p+1
Je sais qu'il faut commencer par la fin mais je ne vois absolument pas comment faire.
Merci d'avance.
Pour mon cours d'informatique, je dois modifier ce programme pour pouvoir décrypter un message:
message="cettematinéed’hiverestparticulièrementensoleillée"
n=len(message)
listk=[4,0,2,6,1,3,5]
maxi=len(listk)
for k in listk:
p=0
while k+p*maxi<=n-1:
print(message[k+p*maxi],end="")
p=p+1
Je sais qu'il faut commencer par la fin mais je ne vois absolument pas comment faire.
Merci d'avance.
A voir également:
- Décryptage python
- Citizen code python avis - Accueil - Outils
- \R python ✓ - Forum Python
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Python
- Python par la pratique : 101 exercices corrigés pdf - Forum Python
- Citizen code python solution - Forum Python
3 réponses
Bonjour,
Pour les balises de code, tu n'as pas tout lu
Visuellement, ça doit ressembler à ceci (avec la coloration syntaxique) :
Pour les balises de code, tu n'as pas tout lu
Visuellement, ça doit ressembler à ceci (avec la coloration syntaxique) :
def test():
print('test')
test()
bonjour,
le point de départ, avant de programmer, est de parfaitement comprendre ce que le programme doit faire.
tiens aussi compte de ces deux éléments:
https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
le point de départ, avant de programmer, est de parfaitement comprendre ce que le programme doit faire.
tiens aussi compte de ces deux éléments:
https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Bonjour,
Merci pour votre réponse. J'ai bien compris ce que fais le programme.
le k+p*maxi consiste à prendre le premier chiffre de la clé+ p (un compteur qui commence à 0) x la longueur de la liste :
on numérote le message de 0 à 5
S O L E I L
0 1 2 3 4 5
2+ 0x3 = 2 -> L
2+ 1x3 = 4 -> L on arrive à la fin du message donc on change de chiffre dans la clé : 0
0+ 0x3 = 0 -> S
0+ 1x3 = 3 -> E on est à la fin du message donc on passe à 1
1+ 0x3 = 1 -> O
1+ 1x3 = 4 -> I
On obtient: LLSEOI
J'arrive à crypter et décryter le message à la mais, mais je ne vois pas trop comment le mettre dans le programme.
Merci pour votre réponse. J'ai bien compris ce que fais le programme.
<code>message="soleil"
n=len(message)
listk=[2, 0, 1]
maxi=len(listk)
for k in listk:
p=0
while k+p*maxi<=n-1:
print(message[k+p*maxi],end="")
p=p+1</code>
le k+p*maxi consiste à prendre le premier chiffre de la clé+ p (un compteur qui commence à 0) x la longueur de la liste :
on numérote le message de 0 à 5
S O L E I L
0 1 2 3 4 5
2+ 0x3 = 2 -> L
2+ 1x3 = 4 -> L on arrive à la fin du message donc on change de chiffre dans la clé : 0
0+ 0x3 = 0 -> S
0+ 1x3 = 3 -> E on est à la fin du message donc on passe à 1
1+ 0x3 = 1 -> O
1+ 1x3 = 4 -> I
On obtient: LLSEOI
J'arrive à crypter et décryter le message à la mais, mais je ne vois pas trop comment le mettre dans le programme.