L'équivalent de printf

asoul -  
 asoul -
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

asoul
 
merci à tout le monde,

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

's' : pour les caractères (string).
1
samy
 
disp('Hello World !')
0
asoul
 
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 267 Statut Membre 70
 
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
asoul
 
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 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
??
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
asoul
 
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 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
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
asoul
 
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