Programmation en python

Résolu/Fermé
O1 - 1 mai 2017 à 13:34
 O1 - 8 mai 2017 à 23:43
Bonjour,


comment faire la transposée d'une matrice en python.
merci de m'aider à trouver le programme le plus efficace .

2 réponses

Utilisateur anonyme
3 mai 2017 à 18:54
Salut,

Comment as-tu modélisé ta matrice sous Python ?
Merci d'insérer correctement ton code.
0
Voilà mon programme python:
>>> def transposée (A):
... for i in range len(A):
... for j in range len(A[0]):
... R=[]
... R[i][j]=R[j][i]
... return R
0
Utilisateur anonyme
6 mai 2017 à 22:27
De nouveau :
Merci d'insérer correctement ton code -> https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Le soucis dans ton code, c'est que tu initialises un tableau à chaque fois que tes boucles traitent une case de ta matrice A. Il faut initialiser R avant les deux boucles.
0
_Ritchi_ Messages postés 21210 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 20 avril 2024 6 058
7 mai 2017 à 08:36
Bonjour
Et l'autre souci c'est R[i][j]=R[j][i] : syntaxiquement c'est correct, mais tu ne manipules pas les vraies données, celles contenues dans A.
Ritchi
0
O1 > _Ritchi_ Messages postés 21210 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 20 avril 2024
7 mai 2017 à 13:23
Comment?
0
Utilisateur anonyme
8 mai 2017 à 11:36
Oui, effectivement. Si R est ton résultat, tu ne fais que des opérations sur R sans toucher à A avec R[i][j]=R[j][i].
0
O1 > Utilisateur anonyme
Modifié le 9 mai 2017 à 00:05
>> def transposée (A):
>... R=[]
... for i in range len(A):
... for j in range len(A[0]):
... R[i][j]=A[j][i]
... return R
je pense que ça va marcher maintenant.merci
0