Chaîne de caractère python [Fermé]

Signaler
-
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
-
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

5 réponses

Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042
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é

1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042
resultat=resultat+mot[0}+cle[0] ==> ""+"b"+"s" ==> "bs"

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

1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

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 :/
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042 >
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
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042 >
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020

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
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019

????
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042 >
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
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.
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042
suite : https://forums.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
+'*
' ?

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
Messages postés
30179
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
1 décembre 2020
7 042 >
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
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.
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
Messages postés
13
Date d'inscription
jeudi 31 octobre 2019
Statut
Membre
Dernière intervention
1 novembre 2019

Voilà ce que j'ai fait