Utilis. des 4 chiffres après la virgule

Liun -  
 Liun -
Bonjour,

Je fais des opérations avec plusieurs matrices (multplication etc ...) en C .Et pour retrouver le meme résultat que sur matlab, il me faut utiliser les résultats en C de la multiplication des matrices avec 4 chiffres après la virgule ...
Ma question est comment prendre les 4 chiffres de mon résultat (au lieu des 6 que me donne le compilateur) afin de continuer mes calculs ...

PS : je ne veux pas afficher les 4 chiffres après la virgule mais les utiliser ...
Configuration: Linux Fedora
Firefox 1.5.0.12

5 réponses

  1. dabdob
     
    bjr

    pour afficher seulement les 4 premiere chifre apré la vigule:

    printf("%.2f",x);
    0
  2. amigo
     
    bonjour,

    tu peux affecter le resultat à une chaine en la formatant et reconvertir cette chaine en double

    char str[20];
    double resultat;

    sprintf(str,"%.4f",resultat);
    resultat=atof(str);

    A+.
    0
  3. Liun
     
    Dslé mais je ne veux pas afficher mes résultats, mais les utiliser pour faire d'autres opérations en utilisant les 4 chiffres après la virgule é non les 6 que me donne mon compilateur ... comment es ce que je peux faire cela ???!!!

    Si je fais par exemple : A = 4.52 * 38.3; (= 173.1160)
    Puis ds le code je pose après : B = A * 2.5; Je voudrais utiliser A = 173.12 ...

    J'espere que j'ai bien expliqué cette fois-çi ...
    0
  4. amigo
     
    Re,

    J'ai bien compris, la fonction sprintf(str,"%.4f",resultat); n'affiche pas le résultat, à ne pas confondre avec printf(). sprintf() affecte à str la valeur de resultat convertie en chaine formatée.

    ex: resultat=175.452328
    sprintf(str,"%.4f",resultat); /* str="175.4523" */
    resultat=atof(str); /* resultat=175.4523 */

    c'est bien ce que tu voulais ,non?

    A+.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question