Type a statement using srand() to seed random number generation using variable seedval. then type two statements using rand() to print two random integers between 0 and 9. end with a newline. ex:
5
7
note: for this activity, using one statement may yield different output (due to the compiler calling rand() in a different order). use two statements for this activ

Answers

View Image

Explanation:

No number is really ever random. It all has a seed, which is an initial value for the 'random' number to be generated. The rand() function uses an equation to  generate its value, and all its 'random' value depend on the first number you plug in into your equation. The initial number you plug into your equation is what srand() do.

If you just call rand() alone without calling srand() then the generated numbers will automatically use srand(1) as a default seed. Using the same srand() value will always yield the same sequence of numbers.

To get a number between 0 and 9, take the modulus of it with 10 because modulus give you the remainder, so the number rand()%10 will never be equal to 10 or greater.


Type a statement using srand() to seed random number generation using variable seedval. then type tw
Type a statement using srand() to seed random number generation using variable seedval. then type tw

1. The solution to question 1 is as follows;

srand(seedVal);

cout<<rand()%10<<endl;

cout<<rand()%10<<endl;

2. The solution to question 2 is as follows

cout<<100+rand()%50 <<endl;

cout<<100+rand()%50 <<endl;

Explanation:

The general syntax to generate random number between interval is

Random Number = Lower Limit + rand() % (Upper Limit - Lower Limit + 1)

In 1;

The solution starts by calling srand(seedVal);

The next two statements is explained as follows

To print two random integers between intervals of 0 and 9 using rand()"

Here, the lower limit = 0

the upper limit =  9

By substituting these values in the formula above; the random number will be generated as thus;

Random Number = 0 + rand() % (9 - 0 + 1)

Random Number = 0 + rand() % (10)

Random Number = rand() % (10)

So, the instruction to generate the two random variables is rand() % (10)

2.

Similar to 1 above

To print two random integers between intervals of 100 and 149 using rand()"

Here, the lower limit = 100

upper limit = 149

By substituting these values in the formula above; the random number will be generated as thus;

Random Number = 100 + rand() % (149 - 100 + 1)

Random Number = 100 + rand() % (50)

So, the instruction to generate the two random variables is 100 + rand() % (50)

The C++ code is given below with appropriate comments

Explanation:

//Use stdafx.h for visual studio.

#include "stdafx.h"

#include <iostream>

//Enable use of rand()

#include <cstdlib>

//Enable use of time()

#include <ctime>

using namespace std;

int main()

{

    //Note that same variable cannot be defined to two

    //different type in c++

    //Thus, use either one of the two statement

    //int seedVal=0;time_t seedVal;

    //int seedVal=0;

    time_t seedVal;

    seedVal = time(0);

    srand(seedVal);

    //Use rand to generate two number by setting range

    // between 0 and 9. Use endl for newline.

    cout << (0 + rand() % ((10 - 0) + 0)) << endl;

    cout << (0 + rand() % ((10 - 0) + 0)) << endl;

    //Use for visual studio.

    system("pause");

    return 0;

}



Do you know the answer?

Other questions on the subject: Computers and Technology