Enlève les guillemets autour de ta variable M :
Sinon il va écrire au format à virgule la valeur ascii de M (77).
Code : Sélectionner tout - Visualiser dans une fenêtre à part fprintf(fid,'%f', M);
Enlève les guillemets autour de ta variable M :
Sinon il va écrire au format à virgule la valeur ascii de M (77).
Code : Sélectionner tout - Visualiser dans une fenêtre à part fprintf(fid,'%f', M);
N'oubliez pas de consulter les FAQ Matlab et les tutoriels Matlab
Pas de question technique par MP, Merci
J'ai tous redctifié.
Maintenant j'ai la bonne extension, le bon format d'écriture par contre j'ai perdu la mise en page (sur 4 colonnes) et pleins de "0" se sont rajoutés.
Je te conseil de t'inspirer des exemples de la doc quand tu as ce genre de problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part fprintf(fid,'%f %f %f %f\r\n', M);
N'oubliez pas de consulter les FAQ Matlab et les tutoriels Matlab
Pas de question technique par MP, Merci
Effectivement ça change tout.
Je vois pour le \r et \n par contre qu'est-ce que ça fait de mettre plusieurs fois "%f" ?
La lignesignifie : écrit moi les 4 prochaines valeurs sous la forme de nombre à virgule, espacées d'un espace, avec un retour à la ligne (\r et \n sont les symboles pour le retour chariot et le retour à la ligne, selon l'éditeur de texte et le système d'exploitation tu auras besoin de l'un, de l'autre ou des 2).
Code : Sélectionner tout - Visualiser dans une fenêtre à part '%f %f %f %f\r\n'
N'oubliez pas de consulter les FAQ Matlab et les tutoriels Matlab
Pas de question technique par MP, Merci
aah Ok merci pour votre aide et votre patience !!
Attention toutefois à bien rentrer le tableau correctement en paramètre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 >> M = [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12 ;13 14 15 16] M = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 >> fprintf(fid,'%f %f %f %f\r\n', M) 1.000000 5.000000 9.000000 13.000000 2.000000 6.000000 10.000000 14.000000 3.000000 7.000000 11.000000 15.000000 4.000000 8.000000 12.000000 16.000000
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 >> fprintf(fid,'%f %f %f %f\r\n', M.') 1.000000 2.000000 3.000000 4.000000 5.000000 6.000000 7.000000 8.000000 9.000000 10.000000 11.000000 12.000000 13.000000 14.000000 15.000000 16.000000
ah oui je n'avais pas fait attention. Effectivement je vais devoir utiliser la deuxième solution.
J'imagine que ledoit fixer les données de manière horizontale ou quelque chose comme ça, non ?.'
.' opère une simple transposée. (Cf FAQ)
Sinon pour l'explication, il faut savoir comment sont stockées les données en mémoire.
Ok j'ai pigé le truc
Merci pour votre aide !!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager