Outils pour utilisateurs

Outils du site


profgra:tests:histogrammes

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

profgra:tests:histogrammes [2016/06/17 15:04] (Version actuelle)
195.221.62.1 créée
Ligne 1: Ligne 1:
 +# Histogrammes
  
 +## Introduction
 +
 +MicroAlg n’a pas de commande pour tracer directement un diagramme.
 +Mais la commande `Rectangle` permet tout de même d’en tracer.
 +
 +Si vous ne préférez pas parler de la commande `Liste` à vos élèves,
 +vous pouvez toujours vous servir du code préalable
 +(voir [cet exemple](microalg:​config_echantillons#​code_prealable))
 +pour définir la commande `Baton` et l’utiliser ainsi :  ​
 +`(Baton position_x hauteur largeur)`  ​
 +À vous de la coder !
 +
 +Le dernier exemple de cette page cache même la définition d’une
 +nouvelle commande `Histo`.
 +
 +## Avec boucle Tant_que
 +
 +(MicroAlg "​histogrammes-src"​ {"​processing":​ "​true"​})
 +(RAZ)
 +(Repere -10 140 -10 140 20 10)
 +(Remplissage (Liste 255 0 0))
 +(Declarer valeurs De_type "​liste"​)
 +(Declarer i De_type "​nombre"​)
 +(Affecter_a valeurs (Liste 10 50 20))
 +(Affecter_a i 1)
 +(Tant_que (<= i (Longueur valeurs))
 + Faire
 +    (Rectangle (Liste (* 20 (- i 1)) 0) (Liste (* 20 i) (Nieme valeurs i)))
 +    (Affecter_a i (+ i 1))
 +)
 +(/MicroAlg)
 +
 +## Avec commande Histo
 +
 +(MicroAlg "​histogrammes-cmd"​ {"​processing":​ "​true"​})
 +(RAZ)
 +(Repere -10 140 -10 140 20 10)
 +(Remplissage (Liste 255 0 0))
 +(Declarer i De_type "​nombre"​)
 +(Definir (Histo valeurs largeur)
 +    "Trace l’histogramme des valeurs de la liste `valeurs`,
 +     ​chaque rectangle ayant la largeur `largeur`."​
 +    (Affecter_a i 1)
 +    (Tant_que (<= i (Longueur valeurs))
 +     Faire
 +        (Rectangle (Liste (* largeur (- i 1)) 0) (Liste (* largeur i) (Nieme valeurs i)))
 +        (Affecter_a i (+ i 1))
 +    )
 +)
 +(Histo (Liste 10 50 20) 20)
 +(/MicroAlg)
 +
 +## Avec code de la commande Histo caché
 +
 +(MicroAlg "​histogrammes-presrc"​ {"​processing":​ "​true",​ "​presrc":"​(Declarer i De_type \"​nombre\"​)(Definir (Histo valeurs largeur)(Affecter_a i 1)(Tant_que (<= i (Longueur valeurs)) Faire (Rectangle (Liste (* largeur (- i 1)) 0) (Liste (* largeur i) (Nieme valeurs i))) (Affecter_a i (+ i 1))))"​})
 +(RAZ)
 +(Repere -10 140 -10 140 20 10)
 +(Remplissage (Liste 255 0 0))
 +(Histo (Liste 10 50 20) 20)
 +(/MicroAlg)
profgra/tests/histogrammes.txt · Dernière modification: 2016/06/17 15:04 par 195.221.62.1