# HG changeset patch
# User Alpar Juttner <alpar@cs.elte.hu>
# Date 1226398357 0
# Node ID c4aa9f097ef103efaace0da886a07331ba7c8ddf
# Parent 6dbd5184c6a99e936a7de899e64c114e30c0f94f
Bugfix in Random (#173)
- operator()s always return a double now
- the faulty real<Num>(Num) and real<Num>(Num,Num) have been removed
diff --git a/lemon/random.h b/lemon/random.h
|
a
|
b
|
|
| 692 | 692 | return real<double>(); |
| 693 | 693 | } |
| 694 | 694 | |
| 695 | | /// \brief Returns a random real number the range [0, b) |
| 696 | | /// |
| 697 | | /// It returns a random real number from the range [0, b). |
| 698 | | template <typename Number> |
| 699 | | Number real(Number b) { |
| 700 | | return real<Number>() * b; |
| 701 | | } |
| 702 | | |
| 703 | | /// \brief Returns a random real number from the range [a, b) |
| 704 | | /// |
| 705 | | /// It returns a random real number from the range [a, b). |
| 706 | | template <typename Number> |
| 707 | | Number real(Number a, Number b) { |
| 708 | | return real<Number>() * (b - a) + a; |
| 709 | | } |
| 710 | | |
| 711 | 695 | /// @} |
| 712 | 696 | |
| 713 | 697 | ///\name Uniform distributions |
| … |
… |
|
| 724 | 708 | /// \brief Returns a random real number from the range [0, b) |
| 725 | 709 | /// |
| 726 | 710 | /// It returns a random real number from the range [0, b). |
| 727 | | template <typename Number> |
| 728 | | Number operator()(Number b) { |
| 729 | | return real<Number>() * b; |
| | 711 | double operator()(double b) { |
| | 712 | return real<double>() * b; |
| 730 | 713 | } |
| 731 | 714 | |
| 732 | 715 | /// \brief Returns a random real number from the range [a, b) |
| 733 | 716 | /// |
| 734 | 717 | /// It returns a random real number from the range [a, b). |
| 735 | | template <typename Number> |
| 736 | | Number operator()(Number a, Number b) { |
| 737 | | return real<Number>() * (b - a) + a; |
| | 718 | double operator()(double a, double b) { |
| | 719 | return real<double>() * (b - a) + a; |
| 738 | 720 | } |
| 739 | 721 | |
| 740 | 722 | /// \brief Returns a random integer from a range |