L'équivalent de printf

Bonjour tout le monde,

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

merci.

3 réponses

  1. 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 !')
      1. c fait
        mais si j'ai mis : signalemis=disp('Hello World !')
        il me donne comme erreur : Too many output arguments.
        vous savez pourqoi ?

        merci.
    2. 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.
      1. 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.
      2. Contributeur
        ??
        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.
      3. 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
      4. Contributeur
        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.
      5. 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