Synthèse Tableau Le tapis de course
Le TP du tapis de course consiste à faire une moyenne mobile. Deux façon de calculer la moyenne mobile était proposé : - l'une avec la moyenne total - l'autre avec plusieurs moyenne de 3 valeurs.
La moyenne totale #define NBRELEVE 7 Int main() { float nuagePoint[NBRELEVE]; float moy; int indice; float min; float max; float val; ? 1 2 3 4 5 6
La moyenne totale for(indice=0; indice<NBRELEVE; indice++) { Do{ printf("Inscrire la valeur %d inferieur à 4095: ", indice+1); scanf("%d", &nuagePoint[indice]); } while(nuagePoint[indice]>4094) ; 10 1 13 2 15 3 16 4 5 17 6
La moyenne totale Min 10 Max min=nuagePoint[0]; max=nuagePoint[0]; for(indice=0; indice<NBRELEVE; indice++) { if(nuagePoint[indice]>max) max=nuagePoint[indice]; } if(nuagePoint[indice]<min) min=nuagePoint[indice]; 10 1 13 2 15 3 16 4 5 17 6 Min 10 Max 17
La moyenne totale for(indice=0; indice<NBRELEVE; indice++) { moy=moy+nuagePoint[indice]; // addition de toutes les valeurs du tableau } moy=moy-min-max; // on retranche les valeurs max et min moy=moy/(NBRELEVE-2); // on divise par le nombre total de valeur du tableau moins le min et le max printf("La valeur moyenne est: %d \n",moy); printf("Les valeurs ecartees sont: %d et %d",min,max) ; return 0;
La moyenne totale #include <stdio.h> #include <stdlib.h> #define CONSTMAX 1<<12 #define NBRELEVE 7 int main() { nuagePoint[NBRELEVE]; float moy; int indice; float min; float max; Float val; moy=0; for(indice=0; indice<NBRELEVE; indice++) do{ printf("Inscrire la valeur %d inférieur à 4095 ", indice+1); scanf("%d",&nuagePoint[indice); } while(nuagePoint[indice>4094) ; min=nuagePoint[0]; max=nuagePoint[0]; for(indice=0; indice<NBRELEVE; indice++) { if(nuagePoint[indice]>max) max=nuagePoint[indice]; } if(nuagePoint[indice]<min) min=nuagePoint[indice]; moy=moy+nuagePoint[indice]; moy=moy-min-max; moy=moy/(NBRELEVE-2); printf("La valeur moyenne est:%d\n",moy); printf("Les valeurs ecartees sont :%d et %d",moy,max); return 0;
Plusieurs moyenne de 3 valeurs #define NBACQUIS 7 int main() { float valeursBrutes[NBACQUIS]; float valeursMoyenne[NBACQUIS-2]; int indice; float val; float moy; ? 1 2 3 4 5 6 ? 1 2 3 4
Plusieurs moyenne de 3 valeurs 10 1 13 2 15 3 16 4 5 17 6 for(indice=0; indice<NBACQUIS; indice++) { printf("Entrer la valeur numero "); printf("%d : ", indice+1); scanf("%f", &val); valeursBrutes[indice]=val; }
Plusieurs moyenne de 3 valeurs for(indice=2; indice<NBACQUIS; indice++) { moy=(valeursBrutes[indice]+valeursBrutes[indice-1]+valeursBrutes[indice-2])/3; valeursMoyenne[indice-2]=moy; } 10 1 13 2 15 3 16 4 5 17 6 12,67 1 14,67 2 15,67 3 16,33 4
Plusieurs moyenne de 3 valeurs for(indice=0; indice<NBACQUIS-2; indice++) { printf("\nValeur moyenne numero "); printf("%d est : ", indice+1); printf("%.2f", valeursMoyenne[indice]); } return 0; 12,67 1 14,67 2 15,67 3 16,33 4
Plusieurs moyenne de 3 valeurs #include <stdio.h> #include <stdlib.h> #define NBACQUIS 7 int main() { float valeursBrutes[NBACQUIS]; float valeursMoyenne[NBACQUIS-2]; int indice; float val; float moy; for(indice=0; indice<NBACQUIS; indice++) printf("Entrer la valeur numero "); printf("%d : ", indice+1); scanf("%f", &val); valeursBrutes[indice]=val; } for(indice=2; indice<NBACQUIS; indice++) moy=(valeursBrutes[indice]+valeursBrutes[indice-1]+valeursBrutes[indice-2])/3; valeursMoyenne[indice-2]=moy; for(indice=0; indice<NBACQUIS-2; indice++) printf("\nValeur moyenne numero "); printf("%d est : ", indice+1); printf("%.2f", valeursMoyenne[indice]); return 0;
10 1 13 2 15 3 16 4 5 17 6 Voici la comparaison entre les 2 méthodes d'évaluation de moyenne. La première méthode donne une moyenne global permettant une comparaison entre plusieurs sportifs alors que la deuxième donne l'évolution de la vitesse sur le temps.
Conclusion #define CONST 7 Int tab[CONST] ; 10 1 13 2 15 3 16 4 5 17 6 10 1 13 2 15 3 16 4 5 17 6 En programmation, les tableaux sont nécessaires pour pouvoir stocker plusieurs valeurs et pouvoir les réutiliser ultérieurement. Sans les tableaux, il serait plus compliqué de calculer ces moyennes.