Remarque préliminaire : cet exercice ne peut être effectué qu’après l’exercice précédent.
L’exercice nécessite l’utilisation de la fonction rand()
qui a déjà été mise à votre disposition.
Lorsque vous en avez fini, récupérer les fichiers sources du projet DureeRelOps
dans le nouveau projet DureeSortSearch
.
Dans la fonction TestDuree()
:
- déclarez la constante
KDureeMax
représentant la valeur maximale d’une durée (par exemple1000000
), - déclarez le type
CVDuree
(vecteur deDuree
s) etIter_t
(itérateur de lecture (const_iterator
)) et un vecteur de typeCVDuree
: - saisissez au clavier le nombre de durées aléatoires à générer,
- générez ces durées dans l’intervalle
[0, KDureeMax]
, - en parcourant le vecteur avec un itérateur, affichez les durées générées sous la forme :
[ xx:xx:xx:xx] = yyyyyyy
où
yyyyyy
est la valeur de la durée en secondes, - triez le vecteur par durées décroissantes au moyen de la fonction standard
sort()
(#include <algorithm>
), - affichez de nouveau le contenu du vecteur (cette fois trié)
- dans une boucle jusqu’à fin de fichier, lisez au clavier une durée en secondes et affichez si la valeur est ou n’est pas dans le vecteur en utilisant la fonction de recherche adéquate.