IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Format personnalisé d'écriture scientifique


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Pérou

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Format personnalisé d'écriture scientifique
    Bonjour à tous,

    Je dois travailler avec un logiciel utilisant une écriture scientifique bâtarde, semblable au format shortEng, mais avec 5 décimales et 3 nombres définissant l’exponentielle, par exemple 1.00000E+001. J’ai donc tenté de définir un formatage : nombre_formate = sprintf('%1.5E',10), mais le résultat ne donne que 2 nombres pour définir l’exponentielle (1.00000E+01).

    Si je tente de rajouter un 3 après le E dans le format, il est considéré comme un simple caractère ne faisant pas partie de la formule :
    nombre_formate = sprintf('%1.5E3',10)
    réponse : 1.00000E+013 (ce qui est faux)

    J’ai également tenté d’utiliser une fonction java : char(java.text.DecimalFormat('0.00000E3').format(10)), mais ce code n’est pas compilé.
    Java exception occurred:
    java.lang.IllegalArgumentException: Malformed exponential pattern "0.00000E3"
    at java.text.DecimalFormat.applyPattern(Unknown Source)
    at java.text.DecimalFormat.<init>(Unknown Source)


    Cette dernière formule fonctionne lorsque je remplace le 3 par un 0, mais ne donne pas le résultat cherché.

    Auriez-vous une idée ?

    Merci de votre aide,

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Je ne pense pas qu'il y ait de format sprintf qui puisse faire cela, l'astuce serait de le décomposer en deux parties : X.XXXXX et E+XXX.

    Avec Java par contre ce sont autant de zéros que de chiffres qu'il faut mettre et non le nombre lui-même :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java.text.DecimalFormat('0.00000E000')

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Pérou

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Je vous remercie ! J'ai dû rajouter une ligne de code pour remplacer le séparateur virgule par un point, mais cela fonctionne bien

Discussions similaires

  1. afficher en écriture scientifique
    Par speedcore dans le forum C
    Réponses: 7
    Dernier message: 11/10/2010, 22h57
  2. Utiliser un Formater personnalisé
    Par seareal dans le forum Struts 1
    Réponses: 1
    Dernier message: 13/12/2007, 16h46
  3. lecture écriture scientifique
    Par [Hugo] dans le forum wxWidgets
    Réponses: 2
    Dernier message: 14/11/2007, 11h24
  4. Conversion d'un chiffre en écriture scientifique
    Par Tapioca dans le forum ASP.NET
    Réponses: 1
    Dernier message: 17/09/2007, 12h34
  5. Réponses: 7
    Dernier message: 26/05/2006, 19h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo