Chaîne de caractère python

-
Bonjour,

Je débute sur python et j'ai des exercices à faire et il ne m'en reste plus qu'un et je n'arrive pas malgré beaucoup de tentatives, la question est de réaliser un programme où on intercale entre chaque caractère de phrase les lettres de cle. Ex: entrée:phrase bonjour le monde ! et clé:spensi-->sortie :Bsopnejnosuirs pleen smiosnpdeen s!i
Voilà si vous pouvez m'aider svp
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662
1
Merci
Bonjour,

Avant d'écrire le code, il faut décrire en phrases ce que tu vas faire (ou dessiner un organigramme). La manifestement on doit avoir 2 boucles, la principale sur la chaine en entrée, la secondaire sur la clé

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 71199 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jee pee
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662
1
Merci
resultat=resultat+mot[0}+cle[0] ==> ""+"b"+"s" ==> "bs"

resultat=resultat+mot[1]+cle[1] ==> "bs"+"o"+"p" ==> "bsop"

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 71199 internautes nous ont dit merci ce mois-ci

Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
Voilà ce que ça donne mais il me dit que j'ai une erreur :/
jee pee
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662 > Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
j+j ????,
l'utilisation de while ne me semble pas judicieux, un simple if peut être

et surtout le traitement de j doit se faire dans la boucle de i
jee pee
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662 > jee pee
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
-
car supposons que len(mot)=10 et len(cle)=4

i va prendre les valeurs 0,1,2,3,4,5,6,7,8,9
mais pour j il va falloir repartir de zéro 2 fois,
j va prendre les valeurs 0,1,2,3,0,1,2,3,0,1
Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
????
jee pee
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662 > Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
je ne sais pas ce que cela donne ?

on ne compare pas j à i mais à la longueur de cle, et l'indice doit repartir de zéro

j==j ? le double égal est un test, est-ce que j est égal à j, oui heureusement
Commenter la réponse de jee pee
0
Merci
Bonjour,

Qu'as-tu fait pour le moment ?
De façon à ce que l'on te montre ce qui ne va pas dans ton code.
Commenter la réponse de khrug
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662
0
Merci
suite : https://www.commentcamarche.net/forum/affich-36288744-chaine-de-caractere

moi j'utiliserais une 3ème variable, résultat, dans laquelle je copierais un caractère de la chaine de départ, un caractère de la clé, un caractère de la chaine de départ, un caractère de la clé, un ...

puis quand tu écris du code puisque apparemment tu ne "visualises" pas le résultat de chaque ligne, tu devrais à chaque ligne mettre des print pour voir le contenu de chaque variable, à chaque pas du programme

question : cela fait quoi
+'*
' ?

Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
+'*' signifie qu'il va être séparer par des Asterix à chaque lettre comme m*o*t
jee pee
Messages postés
27242
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
14 novembre 2019
5662 > Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
ce n'est pas ce qui est demandé dans l'exercice

avec ton code tu aurais du donner le résultat ! je viens de l'essayer : spensib*o*n*j*o*u*r* *l*e* *m*o*n*d*e* *! rien à voir avec le resultat attendu

je te propose de relire tout ce que j'ai écrit
Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
D'accord merci je vais essayer même si je ne suis pas sur d'avoir vraiment compris je te montre ce que j'ai fait dans qq minutes.
Millo_0747
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
-
Je comprend ce que tu m'as dis mais je ne sais pas comment le formuler et expliquer pourrais tu m'expliquer autrement ou avec un exemple ? Stp
Commenter la réponse de jee pee
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019
0
Merci
Voilà ce que j'ai fait
Commenter la réponse de Millo_0747