Advertisement
Guest User

Untitled

a guest
Feb 25th, 2020
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define LUNRIGA 60
  5. #include <math.h>
  6. int main()
  7. {
  8. FILE *f;
  9. FILE *fout;
  10. char nomefile[50];
  11. float x;
  12. char riga[LUNRIGA];
  13. char valoritemp[LUNRIGA];
  14. char newString[LUNRIGA][LUNRIGA];
  15. int i,j,ctr;
  16. int valoritemper;
  17. float sumtemp=0.0;
  18. float media;
  19. float y;
  20. int flag;
  21. char data[LUNRIGA];
  22. printf("nome file: ");
  23. scanf("%s",nomefile);
  24. f=fopen(nomefile,"r");
  25. if(f==NULL){
  26. printf("errore apertura file");
  27. return(-1);
  28. }
  29. fout=fopen("fuorimedia.txt","w");
  30. if(fout==NULL){
  31. printf("errore apertura file");
  32. return(-1);
  33. }
  34. while(fgets(riga,LUNRIGA,f)!=NULL){
  35.  
  36.  
  37. sscanf(riga,"%s %[^\n]s",data,valoritemp);
  38. /*costruisco una matrice in cui ci sono i valori numerici della temperatura*/
  39. j=0; ctr=0;
  40. for(i=0;i<=(strlen(valoritemp));i++)
  41. {
  42.  
  43. if(valoritemp[i]==' '|| valoritemp[i]=='\0')
  44. {
  45. newString[ctr][j]='\0';
  46. ctr++;
  47. j=0;
  48. }
  49. else
  50. {
  51. newString[ctr][j]=valoritemp[i];
  52. j++;
  53. }
  54. }
  55.  
  56. /*con la sscanf vado ad estrarre i valori*/
  57.  
  58. for(i=0;i < ctr;i++){
  59. sscanf(newString[i],"%f",&x);
  60. sumtemp=sumtemp+x;
  61. }
  62. /*dopo cerco di visualizzare la somma ottenuta*/
  63. printf("somma valori :%f\n",sumtemp);
  64.  
  65. media=sumtemp/5;
  66. /*media ottenuta*/
  67. printf("media valori %f\n",media);
  68. flag=0;
  69.  
  70.  
  71. for(i=0;!flag;i++){
  72. sscanf(newString[i],"%f",&y);
  73. if(fabs(y-media)/5>0.05){
  74.  
  75. flag=1;
  76.  
  77. }
  78.  
  79. if(!flag){
  80.  
  81. fprintf(fout,"%s %f\n",data,media); /*mi costruisco il file*/
  82.  
  83.  
  84. }
  85.  
  86. }
  87.  
  88.  
  89. sumtemp=0;
  90. x=0;
  91. }
  92.  
  93.  
  94. return 0;
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement