Domanda di colloquio di eBay

Some probability question 1) given a rand5() function which provide a random number between 1-5 at equal probability. Write a rand7() fuction to provide a random number between 1-7 with equal probability...

Risposte di colloquio

Anonimo

1 apr 2016

The answer Abs(2*rand5()-3 ) does not generate uniformly distributed random numbers. It is wrong!

3

Anonimo

7 feb 2014

int value = rand5() - 1 + (rand5() * 5); if(value < 21) { return (value%7 +1); }

1

Anonimo

7 mar 2014

int value=0 for (i=0; i<5; i++) { value+=(rand5()-1);} return (value%3+1);

Anonimo

3 giu 2013

int value = rand5()-1 + (rand5()-1)*5; if (value < 21) { return( value / 3 +1); }

1

Anonimo

4 apr 2013

Abs(2*rand5()-3 )

5