L'équivalent de printf

Fermé
asoul - 1 sept. 2010 à 17:19
 asoul - 20 sept. 2010 à 14:46
Bonjour tout le monde,

c'est quoi l'instruction équivalente de " printf " du language C sous Matlab ?
qui permet d'écrire une phrase

merci.


A voir également:

3 réponses

merci à tout le monde,

j'ai trouvé cette fonction, c'est " signalemis=input ('entrer votre message : ','s') "

's' : pour les caractères (string).
1
disp('Hello World !')
0
c fait
mais si j'ai mis : signalemis=disp('Hello World !')
il me donne comme erreur : Too many output arguments.
vous savez pourqoi ?

merci.
0
Leviathan49 Messages postés 257 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 22 juillet 2011 70
Modifié par Leviathan49 le 2/09/2010 à 09:23
Il me semble que disp affiche le contenu d'une variable, tu devrais donc stocker ta chaine de caractère avant de pouvoir l'afficher.
Il existe aussi sprintf avec matlab si tu veux utiliser les formats.
0
sprintf ne m'attend pas pour écrire ma chaine de caractère.
par exemple :
quand je mets dans mon script
signalemis=sprintf('entrer votre message à transmettre :')
je veux écrire un message à émettre dans work space, après il continue mon programme.
pour sprintf, elle considère que ' entrer votre message à transmettre : ' est le message à émettre,

j'espère que j'ai bien expliqué.

merci.
0
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
2 sept. 2010 à 14:40
??
Too many output arguments. veux dire que la fonction ne retourne rien !
printf affiche, il ne lit rien.
sprintf n'est pas fait pour afficher mais pour faire du texte avec des formats.
Tu peux aussi utiliser fprintf() sous matlab, qui si tu ne met pas de nom de fichier écris sur la sortie standard, donc ce que tu cherches
Il y a aussi "input" si tu veux que l'utilisateur fournisse une donné, et la str=input("entrer valeur"); fonctionne.
0
fprintf() me donne le nombre de caractères écrit, et input me permet d'écrire qu'une seule valeur
alors c pas ça.

je veux la fonction qui permet de :

signalemis=function('entrer le message : ')
et dans workspace me donne :
entrer le message : et j'écris hello word par exemple
alors il m'affiche :
signalemis=hello word

merci
0
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
2 sept. 2010 à 16:45
Tu aurai commencé par là, ça aurait été mieux. Car printf (en c) ne fait pas du tout ce que tu veux faire.
Je ne crois pas que ce que tu veux faire sois possible ainsi. Il faut protéger ton texte avec des guillemets :
"hello world"
sinon, essaie d'être plus clair.
0
oui c pas comme printf ( en c )

je veux pas écrire mon message dans le fichier, e chaque fois que je veux le changer je dois ouvrir le fichier.
je veux laisser le choix pour tout le monde à écrire son message son modifier mon fichier,
et il faut que ce message être placer dans une autre valeur que je l'ai utilisé dans mon programme.

comme l'exemple que j'ai donné avant : signalemis= le message écrit
alors ce message doit être placer dans signalemis, et comme ça le programme ça marche.

je sais pas si c'est possible

merci
0