From 4768f71d6fb65f870faa20d3aa9251562aef3841 Mon Sep 17 00:00:00 2001 From: Ricardo Markiewicz Date: Wed, 19 Oct 2005 17:09:45 +0000 Subject: [PATCH] Nueva funcion random. --- src/random.cpp | 5 +++++ src/random.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 src/random.h diff --git a/src/random.cpp b/src/random.cpp index 90bfaa8..b4f1260 100644 --- a/src/random.cpp +++ b/src/random.cpp @@ -61,3 +61,8 @@ void Random::Strings (std::list &lst, uint n) } } +double Random::Double (double min, double max) +{ + return min + max * (float)rand () / (RAND_MAX + 1.0f); +} + diff --git a/src/random.h b/src/random.h new file mode 100644 index 0000000..d2c9993 --- /dev/null +++ b/src/random.h @@ -0,0 +1,47 @@ + +#ifndef _RANDOM_H_ +#define _RANDOM_H_ + +#include +#include +#include +#include + +/** Generación de valores aleatoreos. */ +class Random { + public: + /** Inicializa tablas de números y palabras. + * + * Debe ser llamado antes de utilizar cualquier + * otro método. + */ + static void Init (); + + /** Llena un lista con strings generados aleatoreamente. + * + * \param lst Lista donde insertar los valores generados. + * \param n Cantidad de elementos a insertar. + */ + static void Strings (std::list &lst, uint n); + + /** Llena una lista con números enteros generados aleatoreamente. + * + * El valor de los números irá desde -N a N. + * \param lst Lista donde agregar los valores generados. + * \param n Cantidad de elementos a agregar. + */ + static void Ints (std::list &lst, uint n); + + + static double Double (double min, double max); + + private: + static void GetFile (const char *f, std::map &out, int &cant); + static std::map productos; + static std::map marcas; + static int productos_cant; + static int marcas_cant; +}; + +#endif + -- 2.43.0