Bonjour à tous,
je voulais utiliser un header de l'ensemble des librairies de Boost
"boost/random/triangle_distribution.hpp"
j'ai trouvé un exemple sur http://miles.developpez.com/tutoriels/cpp/boost/random/
moi je le veut pour triangle_distribution alors ça donne ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 void test() { boost::mt19937 engine(static_cast<long unsigned int>(clock())); boost::normal_distribution<double> generator; boost::variate_generator<boost::mt19937, boost::normal_distribution<double> > binded(engine, generator); }
MAis normalement la fonction triangulaire demande 3 variables: 2 pour l'intervalle et une comme valeur nominale.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 void test() { boost::mt19937 engine(static_cast<long unsigned int>(clock())); boost::triangle_distribution<double> generator; boost::variate_generator<boost::mt19937, boost::triangle_distribution<double> > binded(engine, generator); }
Mon code général c'est ça, en gros je veux utiliser cette librairie pour générer des valeurs selon la méthode triangulaire et les stocker sur un fichier txt
Ma question est ce code de void test() suffit, il est ce qu'il va me sortir une valeur. (Débutant en C++)
et comment faire pour intégrer les variables de la fonction triangulaire
MERCI
PS: je travaille avec code::blocks
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 #include <stdio.h> #include <stdlib.h> #include <fstream> #include <boost/random/triangle_distribution.hpp> #include <boost/random/variate_generator.hpp> #include <boost/random/mersenne_twister.hpp> #include <ctime> void test() { boost::mt19937 engine(static_cast<long unsigned int>(clock())); boost::triangle_distribution<double> generator; boost::variate_generator<boost::mt19937, boost::triangle_distribution<double> > binded(engine, generator); } //Méthode pour ajouter une ligne dans un fichier .txt void AjouterUneLigne() { int random_integer=test(); // std::ios_base::out est automatiquement ajouté par le constructeur de std::ofstream std::ofstream file( "fichier.txt", std::ios_base::app ); file << random_integer<<"\n"; } int main() { long compteur = 0; while (compteur < 17) { AjouterUneLigne(); compteur++; } return 0; }
Partager