Probleme Open Office..

Probleme Open Office.. - Logiciels - Windows & Software

Marsh Posté le 27-12-2014 à 18:24:44    

Bonjour,
Bon voila, en plein écriture de mon projet informatique je suis bloqué, et pourtant je suis sur que c'est tres simple..
mon projet est "étude d'un circuit RC en régime sinusoïdal permanent".
ce que j'ai fais:
-programme qui calcul la l’impédance en fonction de la fréquence ==> j’obtiens un tableau.
-je met ce tableau en fichier.ods (ou fichier.csv, j'ai tester les 2..).
-j'obtiens donc un joli tableau, jusque la OK.
 
je que je voudrais c'est faire une courbe (de l’impédance en fonction de la fréquence) , une courbe toute bête donc.. MAIS CA MARCHE PAS x)
 
Idéalement j'aurai voulu que mon programme le fasse automatiquement, mais déjà manuellement j'y arrive pas :/
 
voila ce que j'obtiens : http://zupimages.net/up/14/52/akan.jpg
 
(oui jai pourtant bien sélectionner les donnée de X et Y)
Quand je fait un tableau factice ça marche , mais avec mes données niet..
Mon code :

Code :
  1. #include <stdio.h>
  2. #include <math.h>
  3. #include <stdlib.h>
  4. // Etude en regime sinusoidal d'un circuit RC     
  5. int main (void)
  6. {
  7. //declaration
  8. //1-fonction
  9. void presentationf (void);
  10. void rentreedonneef();
  11. void creation_fichierf ();
  12. void calculf ();
  13. int lol;
  14. //variable
  15. double resistance;
  16. double capacite;
  17. double pulsation[1000];
  18. double resultat[1000];
  19. double dephasage[1000];
  20. //2-presentation du programme
  21. presentationf();
  22. //entrée des donnée
  23. rentreedonneef(&resistance,&capacite);
  24. printf("\nPour une resistance de %f et une capacite de %f : \n",resistance,capacite);
  25. calculf (&resistance,&capacite,resultat,pulsation,dephasage);
  26. creation_fichierf (resultat,pulsation,dephasage);
  27. return 0 ;
  28. }
  29. void presentationf (void)
  30. {
  31. printf("\n Bienvenu dans le programme \"Etude de circuit RC en regime sinusoidal permanant\"\n" );
  32. }
  33. void rentreedonneef (double *presistance,double *pcapacite)
  34. {
  35. printf("valeur de la resistance ?" );
  36. scanf("%lf",presistance);
  37. printf("valeur de la capacite ?" );
  38. scanf("%lf",pcapacite);
  39. }
  40. void creation_fichierf (double resultat[],double pulsation[],double dephasage[])
  41. {
  42. FILE* fichier = NULL;
  43. int i2 = 0;
  44. fichier = fopen("test.ods", "w" );
  45. fprintf(fichier,"pulsation(Hz);Impedance(R);dephasage(rad)\n" );
  46. for (i2=0;i2<90;i2++)
  47. {
  48. fprintf(fichier,"%f;%f;%f\n",pulsation[i2],resultat[i2],dephasage[i2]);
  49. }
  50. fclose(fichier);
  51. }
  52. void calculf (double *presistance, double *pcapacite, double *resultat ,double *pulsation,double *dephasage)
  53. {
  54.     double W=0;
  55.     double A=0;
  56.     double B=0;
  57.     double D = 0;
  58.     double Z=0;
  59.     double arg = 0;
  60.     double R = *presistance;
  61.     double C = *pcapacite*pow(10,-9);
  62.     int i = 0;
  63.     double resultat_f[1000];
  64.     double pulsation_f[1000];
  65.     double dephasage_f[1000];
  66.     for (B=0;B<10;B++)
  67.     {
  68.       for (D=1;D<10;D++)
  69.       {
  70.         W = D*pow(10,B);
  71.         Z = sqrt((R*R)+(1/((C*C)*(W*W))));
  72.         arg = atan(-1/(R*C*W));
  73.         printf("\n pour une frequence de %f l'impedance est %f",W,Z);
  74.         printf("\n pour une frequence de %f le dephasage est de %f",W,arg);
  75.         printf("\n\n" );
  76.         resultat_f[i] = Z;
  77.         pulsation_f[i] = W;
  78.         dephasage_f[i] = arg;
  79.         resultat[i] = resultat_f[i];
  80.         pulsation[i] = pulsation_f[i];
  81.         dephasage[i] = dephasage_f[i];
  82.         i++;
  83.       }
  84.     }
  85.     //Z = sqrt((R*R)+(1/((C*C)*(W*W))));
  86.     //arg = atan(-1/(R*C*W));
  87. }


 
Dsl je n'arrive pas a le mettre en spoiler.
Merci de m'aider :)
ps: je savait pas ou poser mon problème, soyez clément :P


Message édité par sogejing le 27-12-2014 à 18:27:34
Reply

Marsh Posté le 27-12-2014 à 18:24:44   

Reply

Marsh Posté le 28-12-2014 à 17:03:15    

personne... ? :/

Reply

Marsh Posté le 29-12-2014 à 14:28:55    

Je crois que j'ai trouvé une partie de mon problème : En C on renvois des nombres au format "américain" (c'est a dire des points a la place des virgule) alors que open office utilise des virgule, je vais essayer de télécharger la version anglaise.

Reply

Marsh Posté le 29-12-2014 à 15:17:13    

Pas besoin de version anglaise, tu peux lui spécifier le format de nombre à utiliser, ou mieux, il faudrait que tu génères ton fichier avec le format de nombre attendu dans OO.


---------------
Filmstory : gardez trace des films que vous avez vu ! :D
Reply

Marsh Posté le 31-12-2014 à 10:17:17    

voila c'est bon, j'ai regler ce probleme! merci !
Maid maintenant je voudrais que ça l'affiche automatiquement, hors dans le format ou je "l'exporte", faire des courbe est imposible, et je comprend rien au format où faire des courbe est possible..

Reply

Marsh Posté le 31-12-2014 à 10:32:25    

J'ai trouver un moyen, faire ouvrir gnuplot et lui demander de tracé la courbe, mais comment "envoyer" des donnée a un .exe qu'on vient d'ouvrir?

Reply

Marsh Posté le 02-01-2015 à 17:32:16    

je me permet de up :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed