Blame view

Tp1_3.c 1.36 KB
5eb7fe63   Vincent Benoist   TP de C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
  #include <stdio.h>
  
  float somme(float v1, float v2){
      return (v1+v2);
  }
  
  void minMax(float *min, float* max, float a, float b, float c){
     if( a>b && a>c){
         *max = a;
     }else if (b>a && b>c){
         *max = b;
     }else {
         *max =c;
     }
     
     if( a<b && a<c){
         *min = a;
     }else if (b<a && b<c){
         *min = b;
     }else {
         *min =c;
     }
      
  }
  
  void permuter (float* a, float* b){
      float tmp;
      tmp = *a;
      *a = *b;
      *b = tmp;
  }
  
  void minMax2v(float* v1,float* v2){
      if(*v2>*v1){
          permuter(v1,v2);
      }
  }
  
  void traitementSuite( float* min, float* max, float* moyenne, int* existe){
      float tmp=0;
      float res=0;
      int i=0;
      scanf("%f",&tmp);
     
      if(tmp==0){
          *existe =0;
      }else{
          
          *min = *max = tmp;
          res = res + tmp;
          i=1;
          scanf("%f",&tmp);
          res = res + tmp;
          minMax2v(min,&tmp);
          minMax2v(&tmp,max);
         
          while(tmp!=0){
              i++;
              scanf("%f",&tmp);
              res = res + tmp;
              minMax(min,max,*min, tmp,*max);
          }
          
      *moyenne= (res/i);    
      *existe=1;
      }
    //printf("somme %f   i: %d",res,i);
  }
  
  int main(){
      float min,max,moyenne;
      int existe;
      traitementSuite(&min,&max,&moyenne,&existe);
      printf("min: %f max: %f moyenne: %f, existe: %d",min,max,moyenne,existe);
      return 0;
  }