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.

3 réponses

  1. 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
  2. samy
     
    disp('Hello World !')
    0
    1. 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
  3. 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
    1. 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
    2. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
       
      ??
      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
    3. 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
    4. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
       
      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
    5. 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