This is entirely implementation specific, but it appears that in the C++ environment you’re working in, RAND_MAX
is equal to INT_MAX
.
Because of this, RAND_MAX + 1
exhibits undefined (overflow) behavior, and becomes INT_MIN
. While your initial statement was dividing (random # between 0 and INT_MAX
)/(INT_MAX
) and generating a value 0 <= r < 1
, now it’s dividing (random # between 0 and INT_MAX
)/(INT_MIN
), generating a value -1 < r <= 0
In order to generate a random number 1 <= r < 2
, you would want
r = ((double) rand() / (RAND_MAX)) + 1
Related Posts:
- How to generate a random number in C++?
- Random number between 1 to 10 using C++
- srand(time(0)) and random number generation
- Random float number generation
- Random number c++ in some range
- C++, random number w/ range of 1-6
- Generate random float between two floats
- generate random double numbers in c++
- How do I create a random alpha-numeric string in C++?
- C++ Simple Dice roll – how to return multiple different random numbers [duplicate]
- Weighted random numbers
- How to implement 2D vector array?
- What is the difference between g++ and gcc?
- What is the best way to use a HashMap in C++?
- What is the difference between float and double?
- How do I find the length of an array?
- C++ — expected primary-expression before ‘ ‘
- Using getline() with file input in C++
- g++ ld: symbol(s) not found for architecture x86_64
- Making my own toString() method on c++ struct
- C++ Singleton design pattern
- How to concatenate a std::string and an int
- Why unsigned int 0xFFFFFFFF is equal to int -1?
- What is the significance of return 0 in C and C++?
- C++ error: terminate called after throwing an instance of ‘std::bad_alloc’
- Why am I getting this redefinition of class error?
- error : expected unqualified-id before return in c++
- math in java – what does ” %” do?
- Unsigned keyword in C++
- How can I solve the error LNK2019: unresolved external symbol – function?
- What are forward declarations in C++?
- C++ string to double conversion
- C++ Linked List Node with class
- ‘was not declared in this scope’ error
- Exception Handling in C++ Terminate called after throwing an instance of ‘char const*’
- how to define -std=c++11 as default in g++
- “g++” is not recognized as an internal or external command, MinGW
- Is there a function to copy an array in C/C++?
- C++ error: no matching constructor for initialization of
- Why use string::iterator rather than index?
- C++ request for member ‘’ in ‘’, which is of non-class type ‘’
- Using O_RDWR vs O_RDONLY | O_WRONLY
- How to implement the factory method pattern in C++ correctly
- c++ array – expression must have a constant value
- Sleep function in C++
- Getting error “a nonstatic member reference must be relative to a specific object” while both member are in the same class
- Division in C++
- How to iterate over a vector?
- What are the differences between struct and class in C++?
- What is ‘\0’ in C++?
- What is std::move(), and when should it be used?
- Undefined reference to class constructor, including .cpp file fixes
- Deleting a dynamically allocated 2D array
- How to add element to C++ array?
- Difference of keywords ‘typename’ and ‘class’ in templates?
- Read data from a file into an array – C++
- Unknown override specifier, missing type specifier
- error: overloaded ‘operator<<' must be a binary operator (has 3 parameters)
- Process returned -1073741571 (0xC00000FD) on my c++ code
- C++ Why Is There “Unknown Type” When Class Header is Included?
- Invalid conversion from “const char*” to “char” error [duplicate]
- C++ strings and pointers
- What is the preferred way to include error messages in C++?
- How to Convert a C++ String to Uppercase
- Cannot open Windows.h in Microsoft Visual Studio
- Nested For – Loops to create multiplication table C++
- The system cannot find the file specified. in Visual Studio
- to_string not declared in scope
- C++ Initializing a Global Array
- How to convert an ASCII char to its ASCII int value?
- Warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11?
- Reference to non-static member function must be called
- Call to non-static member function without an object argument compiler error
- How can I assign an array from an initializer list?
- I get this error: “glibc detected”
- GCC -fPIC option
- initialize a vector to zeros C++/C++11
- “vector” was not declared in this scope
- Converting string to ASCII
- got “cannot appear in a constant-expression” when using template
- C++ ostream and ofstream conversions
- C++ discards qualifiers
- What is the source of the data for the ProgramFiles, ProgramW6432Dir, ProgramFilesDir (x86), CommonProgramFiles environment variables?
- function does not take 1 arguments c++
- overloaded function with no contextual type information
- How exactly do lookup tables work and how to implement them?
- Vector declaration “expected parameter declarator”
- C++ Destructors with Vectors, Pointers,
- error C2065: ‘cout’ : undeclared identifier
- How to get the MD5 hash of a file in C++?
- C++ Error: Expected a type specifier
- Where to declare/define class scope constants in C++?
- Friend methods error
- Does WPF Work with C++?
- Multiple inputs on one line
- “Incomplete type not allowed ” when creating std::ofstream objects
- Compiler error C4430: missing type specifier – int assumed [duplicate]
- ‘&’ : illegal operation on bound member function expression [duplicate]
- Multiple definitions of “Main”
- Getting the error floating point exception: 8