programmation : moyenne mobile (cours du 31 octobre)

programmation : moyenne mobile (cours du 31 octobre)

par Jean-Cédric Chappelier,
Number of replies: 0

rebonjour,

voici comme d'habitude le code fait ensemble ce matin, plus quelques compléments :

  1. je vous ai ajouté (dans le même fichier) la version améliorée évoquée en tout fin de cours : ne pas recalculer à chaque fois le milieu de la somme ;

  2. je vous joins aussi (dans un autre fichier) une extension de ce programme de départ qui calcule l'exemple du slide 20/40 du cours de vendredi passé.
    Si vous compilez et lancez ce programme de sorte à recueillir sa sortie dans un fichier, par exemple comme ceci (depuis un terminal) :

     ./moyenne_mobile-exemple > a.txt
    alors vous pourrez ensuite dessiner le résultat, par exemple avec le programme « gnuplot » ; dans le terminal, faites :

    gnuplot
    puis (dans gnuplot)

    plot "a.txt" w l, "a.txt" u 2 w l
    et cela devrait vous donner cette jolie image :
    filtre a moyenne mobile sur sin(2*PI*t) + 0.5 * sin(8*PI*t) + 0.1 * sin(64*PI*t)

    Vous avez ainsi un outil très concret pour « étudier » les filtres à moyenne mobile.

    J'aimerais vraiment vous faire réaliser combien avec la programmation vous gagnez petit à petit un outil puissant vous permettant d'approfondir très concrètement plein d'autres notions, informatiques, mathématiques ou physiques ; sachez créer, puis utiliser des programmes outils comme cela qui vous montrent les choses ou qui vous facilitent des calculs.
    Bref...

Lié au sujet de cette semaine (vector), je vous conseille aussi de finir le code de l'exemple de l'algorithme de programmation dynamique pour le calcul des coefficients du binôme (triangle de Pascal) commencé lors de la leçon sur les boucle for.