Histogrammes sont généralement trouvés comme une option graphique dans l'analyse des données dans un tableur, et dans le logiciel de retouche d'image pour montrer la répartition des tons de noir à blanc dans une image. Dans le langage de programmation C, en utilisant un tableau pour contenir le nombre de fréquences simplifie la création d'un histogramme de votre ensemble de données. Bien que les ensembles de données utilisées pour créer des histogrammes contiennent généralement des valeurs entières, des personnages et même des chaînes peuvent être comptés et graphiquement.
Remplir un tableau d'entiers appelé "valeurs" avec votre ensemble de données, et de définir la "numvalues" variable pour le nombre de valeurs dans votre ensemble de données. Celles-ci pourraient être générés de façon aléatoire, lue dans un fichier, ou de façon interactive recueillies auprès de l'utilisateur. Cet exemple initialise ces variables lorsqu'ils sont déclarés:
int numvalues = 20
valeurs int [numvalues] = {-3, 2, -2, 4, 5, 4, 2, 5, 4, 5, 1, 2, 3, 4, 7, 4, 2, 0, 7, -3 };
Mettre en place deux variables entières (i et j) à utiliser comme itérateurs:
int i = 0, j = 0;
Itérer vos données - le tableau de valeurs - et de définir le "maxval" variable à la valeur maximale de vos données:
int maxval = 0-
for (i = 0 à i MAXVAL) maxval = valeurs [i]}
Étape à travers vos données et définir le "minval" variable à la valeur maximale de vos données:
int minval = maxval-
for (i = 0 à i
Déclarez une variable "freqsize" pour maintenir la taille de votre tableau de fréquence:
int freqsize = maxval - minval + 1;
Déclarer un tableau de tenir les comptes de fréquence et initialiser chaque élément du tableau à zéro:
fréquence int [freqsize] -
for (i = 0 à i
Il ya un élément de tableau pour chaque valeur possible dans votre ensemble de données.
Étape à travers chaque valeur dans votre ensemble de données, en ajoutant un à l'élément de tableau de fréquence correspondant à cette valeur:
for (i = 0 - i lt; numvalues - i ++) {int index = valeurs [i] - fréquence minval- [index] ++}
L'indice correspondant à la valeur de courant est générée en décalant la valeur de la valeur minimale.
L'étape à travers chaque élément du tableau de fréquence. Imprimer la valeur actuelle (calculé en décalant l'itérateur "Je" par la valeur minimum). Imprimer le nombre d'étoiles (*) correspondant à la fréquence la valeur actuelle en boucle de l'un à la valeur stockée dans le tableau des fréquences, l'impression d'une seule étoile à chaque fois:
for (i = 1- ILT; = freqsize- i ++) {printf ("% 2d t |", I + minval) - pour (j = 0- j