Raised This Month: $51 Target: $400
 12% 

[code] infinity loop


Post New Thread Reply   
 
Thread Tools Display Modes
addons_zz
Veteran Member
Join Date: Aug 2015
Location: Dreams, zz
Old 12-19-2016 , 11:24   Re: [code] infinity loop
Reply With Quote #11

I just created a closed function, i.e., a stock to generate random unique numbers from 0 until 31:
Code:
/**  * Get unique random positive numbers between 0 until 31. If the `maximum`'s parameter value  * provided is greater than 31, the generated numbers will not be unique. The range is:  *  *     0 <= return value <= maximum <= 31  *  * @param sequence     a random positive number to reset the current unique return values.  * @param maximum      the upper bound limit, i.e., the maximum value to be sorted.  *  * @return -1 when there are not new unique positive numbers to return.  */ stock getUniqueRandomInteger( sequence, maximum ) {     static maximumBitField;     static lastSequence   = -1;     static sortedIntegers = 0;     if( lastSequence != sequence )     {         lastSequence    = sequence;         sortedIntegers  = 0;         maximumBitField = 0;         for( new index = 0; index < maximum + 1; index++ )         {             maximumBitField |= ( 1 << index );         }     }     new randomInteger;     // Keep looping while there is number that haven't yet been selected.     while( sortedIntegers != maximumBitField )     {         randomInteger = random_num( 0, maximum );         // If the number has not yet been selected yet         if( !( sortedIntegers & ( 1 << randomInteger ) ) )         {             // Set bit on the sortedIntegers bit-field, so the integer will now be considered selected             sortedIntegers |= ( 1 << randomInteger );             return randomInteger;         }     }     return -1; }
__________________
Plugin: Sublime Text - ITE , Galileo
Multi-Mod: Manager / Plugin / Server

Support me on Patreon, Ko-fi, Liberapay or Open Collective

Last edited by addons_zz; 12-19-2016 at 11:47.
addons_zz is offline
JusTGo
Veteran Member
Join Date: Mar 2013
Old 12-19-2016 , 11:33   Re: [code] infinity loop
Reply With Quote #12

Quote:
Originally Posted by addons_zz View Post
I just created a closed function, i.e., a stock to generate random unique numbers from 0 until 31:
Code:
/**  * Get unique random positive numbers between 0 until 31. If the `maximum`'s parameter value  * provided is greater than 31, the generated numbers will not be unique. The range is:  *  *     0 <= return value <= maximum <= 31  *  * @param sequence     a random positive number to reset the current unique return values.  * @param maximum      the upper bound limit, i.e., the maximum value to be sorted.  *  * @return -1 when there are not new unique positive numbers to return.  */ stock getUniqueRandomInteger( sequence, maximum ) {     static maximumBitField;     static lastSequence   = -1;     static sortedIntegers = 0;     if( lastSequence != sequence )     {         lastSequence    = sequence;         sortedIntegers  = 0;         maximumBitField = 0;         for( new index = 0; index < maximum + 1; index++ )         {             maximumBitField |= ( 1 << index );         }     }     new randomInteger;     // Keep looping while there is players that haven't yet been selected.     while( sortedIntegers != maximumBitField )     {         randomInteger = random_num( 0, maximum );         // If the number has not yet been selected yet         if( !( sortedIntegers & ( 1 << randomInteger ) ) )         {             // Set bit on the sortedIntegers bit-field, so the integer will now be considered selected             sortedIntegers |= ( 1 << randomInteger );             return randomInteger;         }     }     return -1; }
did you test it ? also its kinda complicated for simple task.
__________________
JusTGo is offline
addons_zz
Veteran Member
Join Date: Aug 2015
Location: Dreams, zz
Old 12-19-2016 , 11:41   Re: [code] infinity loop
Reply With Quote #13

If I tested it? I even created several unit tests for it:
Code:
    /**      * To test the stock getUniqueRandomIntegers(2).      */     stock test_getUniqueRandom_load()     {         test_getUniqueRandomInteger( 0  ); // Case 1         test_getUniqueRandomInteger( 1  ); // Case 2         test_getUniqueRandomInteger( 30 ); // Case 3         test_getUniqueRandomInteger( 31 ); // Case 4         test_getUniqueRandomInteger( 31 ); // Case 5         test_getUniqueRandomInteger( 30 ); // Case 6         test_getUniqueRandomInteger( 1  ); // Case 7         test_getUniqueRandomInteger( 0  ); // Case 8     }     stock test_getUniqueRandomInteger( max_value )     {         new errorMessage[ MAX_LONG_STRING ];         new test_id = test_registerSeriesNaming( "test_getUniqueRandomInteger", 'a' );         new trieSize;         new sortedInterger;         new sortedIntergerString[ 6 ];         new Trie:sortedIntegers = TrieCreate();         static sequence = -1;         sequence++;         for( new index = 0; index < max_value + 3 ; index++ )         {             sortedInterger = getUniqueRandomInteger( sequence, max_value );             num_to_str( sortedInterger, sortedIntergerString, charsmax( sortedIntergerString ) );             formatex( errorMessage, charsmax( errorMessage ), "The integer %d, must not to be sorted twice.", sortedInterger );             SET_TEST_FAILURE( test_id, TrieKeyExists( sortedIntegers, sortedIntergerString ) && sortedInterger != -1, errorMessage )             if( !TrieKeyExists( sortedIntegers, sortedIntergerString ) )             {                 TrieSetCell( sortedIntegers, sortedIntergerString, index ) ? trieSize++ : trieSize;             }         }         formatex( errorMessage, charsmax( errorMessage ), "The TrieSize must to be %d, instead of %d.", max_value + 2, trieSize );         SET_TEST_FAILURE( test_id, trieSize != max_value + 2, errorMessage )         TrieDestroy( sortedIntegers );     }

Result:
Code:
L 12/19/2016 - 14:38:52: {3.052 16300 1743244 1645} I AM ENTERING ON runTests(0)
L 12/19/2016 - 14:38:52: {3.052 16304 1743245    1}
L 12/19/2016 - 14:38:52: {3.052 16304 1743246    1}
L 12/19/2016 - 14:38:52: {3.052 16304 1743248    2}
L 12/19/2016 - 14:38:52: {3.052 16300 1743249    1}     Executing the Galileo's Unit Tests:
L 12/19/2016 - 14:38:52: {3.052 16304 1743257    2}
L 12/19/2016 - 14:38:52: {3.052 16304 1743258    1}
L 12/19/2016 - 14:38:52: {3.052 16304 1743261    3}
L 12/19/2016 - 14:38:52: {3.052 16280 1743262    1} I AM ENTERING ON inGameTestsToExecute(1) player_id: 0
L 12/19/2016 - 14:38:52: {3.052 14920 1743366  104}         EXECUTING TEST 1 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case1
L 12/19/2016 - 14:38:52: {3.052 15160 1743369    3} I AM ENTERING ON getUniqueRandomInteger(2) 0. maximum: 0
L 12/19/2016 - 14:38:52: {3.052 15160 1743372    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:52: {3.052 15160 1743374    2} I AM ENTERING ON getUniqueRandomInteger(2) 0. maximum: 0
L 12/19/2016 - 14:38:52: {3.052 15156 1743375    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 15160 1743377    2} I AM ENTERING ON getUniqueRandomInteger(2) 0. maximum: 0
L 12/19/2016 - 14:38:52: {3.052 15156 1743378    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 14892 1743380    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 1
L 12/19/2016 - 14:38:52: {3.052 14908 1743382    2} OK!
L 12/19/2016 - 14:38:52: {3.052 14908 1743383    1}
L 12/19/2016 - 14:38:52: {3.052 14908 1743384    1}
L 12/19/2016 - 14:38:52: {3.052 14920 1743385    1}         EXECUTING TEST 2 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case2
L 12/19/2016 - 14:38:52: {3.052 15160 1743387    2} I AM ENTERING ON getUniqueRandomInteger(2) 1. maximum: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743389    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:52: {3.052 15160 1743391    2} I AM ENTERING ON getUniqueRandomInteger(2) 1. maximum: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743393    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743394    1} I AM ENTERING ON getUniqueRandomInteger(2) 1. maximum: 1
L 12/19/2016 - 14:38:52: {3.052 15156 1743396    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 15160 1743398    2} I AM ENTERING ON getUniqueRandomInteger(2) 1. maximum: 1
L 12/19/2016 - 14:38:52: {3.052 15156 1743399    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 14892 1743400    1} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 2
L 12/19/2016 - 14:38:52: {3.052 14908 1743403    3} OK!
L 12/19/2016 - 14:38:52: {3.052 14908 1743404    1}
L 12/19/2016 - 14:38:52: {3.052 14908 1743406    2}
L 12/19/2016 - 14:38:52: {3.052 14920 1743407    1}         EXECUTING TEST 3 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case3
L 12/19/2016 - 14:38:52: {3.052 15160 1743409    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743412    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 16
L 12/19/2016 - 14:38:52: {3.052 15160 1743413    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743415    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 13
L 12/19/2016 - 14:38:52: {3.052 15160 1743417    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743418    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 29
L 12/19/2016 - 14:38:52: {3.052 15160 1743419    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743421    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 2
L 12/19/2016 - 14:38:52: {3.052 15160 1743422    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743424    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 27
L 12/19/2016 - 14:38:52: {3.052 15160 1743425    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743427    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 3
L 12/19/2016 - 14:38:52: {3.052 15160 1743428    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743430    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 21
L 12/19/2016 - 14:38:52: {3.052 15160 1743432    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743433    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 8
L 12/19/2016 - 14:38:52: {3.052 15160 1743436    3} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743437    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 6
L 12/19/2016 - 14:38:52: {3.052 15160 1743439    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743442    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 14
L 12/19/2016 - 14:38:52: {3.052 15160 1743444    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743446    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 25
L 12/19/2016 - 14:38:52: {3.052 15160 1743448    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743451    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 17
L 12/19/2016 - 14:38:52: {3.052 15160 1743454    3} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743457    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 26
L 12/19/2016 - 14:38:52: {3.052 15160 1743458    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743460    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 19
L 12/19/2016 - 14:38:52: {3.052 15160 1743462    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743464    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 23
L 12/19/2016 - 14:38:52: {3.052 15160 1743465    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743467    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 5
L 12/19/2016 - 14:38:52: {3.052 15160 1743468    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743470    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 7
L 12/19/2016 - 14:38:52: {3.052 15160 1743471    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743472    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 28
L 12/19/2016 - 14:38:52: {3.052 15160 1743474    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743475    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 11
L 12/19/2016 - 14:38:52: {3.052 15160 1743477    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743478    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 20
L 12/19/2016 - 14:38:52: {3.052 15160 1743480    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743482    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 9
L 12/19/2016 - 14:38:52: {3.052 15160 1743484    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743485    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743488    3} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743489    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 18
L 12/19/2016 - 14:38:52: {3.052 15160 1743491    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743492    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:52: {3.052 15160 1743494    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743496    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 4
L 12/19/2016 - 14:38:52: {3.052 15160 1743498    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743499    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743501    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743503    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 24
L 12/19/2016 - 14:38:52: {3.052 15160 1743505    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743506    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 12
L 12/19/2016 - 14:38:52: {3.052 15160 1743508    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743509    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 22
L 12/19/2016 - 14:38:52: {3.052 15160 1743510    1} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743511    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 15
L 12/19/2016 - 14:38:52: {3.052 15160 1743513    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743514    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 10
L 12/19/2016 - 14:38:52: {3.052 15160 1743516    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15156 1743517    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 15160 1743519    2} I AM ENTERING ON getUniqueRandomInteger(2) 2. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15156 1743520    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 14892 1743522    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 3
L 12/19/2016 - 14:38:52: {3.052 14908 1743522    0} OK!
L 12/19/2016 - 14:38:52: {3.052 14908 1743524    2}
L 12/19/2016 - 14:38:52: {3.052 14908 1743525    1}
L 12/19/2016 - 14:38:52: {3.052 14920 1743527    2}         EXECUTING TEST 4 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case4
L 12/19/2016 - 14:38:52: {3.052 15160 1743528    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743530    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 7
L 12/19/2016 - 14:38:52: {3.052 15160 1743531    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743533    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 6
L 12/19/2016 - 14:38:52: {3.052 15160 1743535    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743535    0}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 9
L 12/19/2016 - 14:38:52: {3.052 15160 1743537    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743538    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 14
L 12/19/2016 - 14:38:52: {3.052 15160 1743539    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743543    4}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 29
L 12/19/2016 - 14:38:52: {3.052 15160 1743545    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743547    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 26
L 12/19/2016 - 14:38:52: {3.052 15160 1743548    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743550    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:52: {3.052 15160 1743552    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743553    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743555    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743556    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 3
L 12/19/2016 - 14:38:52: {3.052 15160 1743557    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743560    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 16
L 12/19/2016 - 14:38:52: {3.052 15160 1743561    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743563    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 19
L 12/19/2016 - 14:38:52: {3.052 15160 1743564    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743566    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 8
L 12/19/2016 - 14:38:52: {3.052 15160 1743567    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743568    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 2
L 12/19/2016 - 14:38:52: {3.052 15160 1743570    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743571    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 10
L 12/19/2016 - 14:38:52: {3.052 15160 1743572    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743573    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 24
L 12/19/2016 - 14:38:52: {3.052 15160 1743575    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743576    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 21
L 12/19/2016 - 14:38:52: {3.052 15160 1743579    3} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743581    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 23
L 12/19/2016 - 14:38:52: {3.052 15160 1743583    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743585    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 5
L 12/19/2016 - 14:38:52: {3.052 15160 1743587    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743589    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 17
L 12/19/2016 - 14:38:52: {3.052 15160 1743590    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743592    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743594    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743595    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 12
L 12/19/2016 - 14:38:52: {3.052 15160 1743597    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743598    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 22
L 12/19/2016 - 14:38:52: {3.052 15160 1743599    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743600    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 15
L 12/19/2016 - 14:38:52: {3.052 15160 1743602    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743603    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743604    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743606    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 25
L 12/19/2016 - 14:38:52: {3.052 15160 1743608    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743610    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 27
L 12/19/2016 - 14:38:52: {3.052 15160 1743611    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743612    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 11
L 12/19/2016 - 14:38:52: {3.052 15160 1743613    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743615    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 13
L 12/19/2016 - 14:38:52: {3.052 15160 1743616    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743617    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 4
L 12/19/2016 - 14:38:52: {3.052 15160 1743619    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743621    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 18
L 12/19/2016 - 14:38:52: {3.052 15160 1743623    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743625    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 20
L 12/19/2016 - 14:38:52: {3.052 15160 1743626    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743628    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 28
L 12/19/2016 - 14:38:52: {3.052 15160 1743629    1} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15156 1743630    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 15160 1743632    2} I AM ENTERING ON getUniqueRandomInteger(2) 3. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15156 1743633    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 14892 1743635    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 4
L 12/19/2016 - 14:38:52: {3.052 14908 1743637    2} OK!
L 12/19/2016 - 14:38:52: {3.052 14908 1743638    1}
L 12/19/2016 - 14:38:52: {3.052 14908 1743639    1}
L 12/19/2016 - 14:38:52: {3.052 14920 1743640    1}         EXECUTING TEST 5 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case5
L 12/19/2016 - 14:38:52: {3.052 15160 1743642    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743643    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 3
L 12/19/2016 - 14:38:52: {3.052 15160 1743645    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743646    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:52: {3.052 15160 1743648    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743649    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 29
L 12/19/2016 - 14:38:52: {3.052 15160 1743650    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743652    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 14
L 12/19/2016 - 14:38:52: {3.052 15160 1743654    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743655    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 23
L 12/19/2016 - 14:38:52: {3.052 15160 1743657    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743658    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 28
L 12/19/2016 - 14:38:52: {3.052 15160 1743659    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743661    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743662    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743664    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 16
L 12/19/2016 - 14:38:52: {3.052 15160 1743666    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743668    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 19
L 12/19/2016 - 14:38:52: {3.052 15160 1743669    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743671    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 2
L 12/19/2016 - 14:38:52: {3.052 15160 1743673    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743674    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743675    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743677    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 11
L 12/19/2016 - 14:38:52: {3.052 15160 1743679    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743680    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 22
L 12/19/2016 - 14:38:52: {3.052 15160 1743682    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743683    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 7
L 12/19/2016 - 14:38:52: {3.052 15160 1743685    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743686    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 17
L 12/19/2016 - 14:38:52: {3.052 15160 1743687    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743689    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 26
L 12/19/2016 - 14:38:52: {3.052 15160 1743690    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743692    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743694    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743695    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 4
L 12/19/2016 - 14:38:52: {3.052 15160 1743696    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743697    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 15
L 12/19/2016 - 14:38:52: {3.052 15160 1743699    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743700    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 20
L 12/19/2016 - 14:38:52: {3.052 15160 1743702    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743705    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 12
L 12/19/2016 - 14:38:52: {3.052 15160 1743706    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743707    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 21
L 12/19/2016 - 14:38:52: {3.052 15160 1743708    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743709    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 5
L 12/19/2016 - 14:38:52: {3.052 15160 1743710    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743712    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 24
L 12/19/2016 - 14:38:52: {3.052 15160 1743714    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743715    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 8
L 12/19/2016 - 14:38:52: {3.052 15160 1743717    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743718    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 6
L 12/19/2016 - 14:38:52: {3.052 15160 1743719    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743720    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 10
L 12/19/2016 - 14:38:52: {3.052 15160 1743722    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743723    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 25
L 12/19/2016 - 14:38:52: {3.052 15160 1743725    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743726    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 9
L 12/19/2016 - 14:38:52: {3.052 15160 1743727    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743728    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 13
L 12/19/2016 - 14:38:52: {3.052 15160 1743730    2} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743732    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 27
L 12/19/2016 - 14:38:52: {3.052 15160 1743733    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15160 1743734    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 18
L 12/19/2016 - 14:38:52: {3.052 15160 1743735    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15156 1743737    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 15160 1743738    1} I AM ENTERING ON getUniqueRandomInteger(2) 4. maximum: 31
L 12/19/2016 - 14:38:52: {3.052 15156 1743739    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:52: {3.052 14892 1743741    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 5
L 12/19/2016 - 14:38:52: {3.052 14908 1743743    2} OK!
L 12/19/2016 - 14:38:52: {3.052 14908 1743744    1}
L 12/19/2016 - 14:38:52: {3.052 14908 1743745    1}
L 12/19/2016 - 14:38:52: {3.052 14920 1743747    2}         EXECUTING TEST 6 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case6
L 12/19/2016 - 14:38:52: {3.052 15160 1743749    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743750    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 28
L 12/19/2016 - 14:38:52: {3.052 15160 1743752    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743753    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 13
L 12/19/2016 - 14:38:52: {3.052 15160 1743754    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743755    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 10
L 12/19/2016 - 14:38:52: {3.052 15160 1743757    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743758    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 23
L 12/19/2016 - 14:38:52: {3.052 15160 1743760    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743761    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 21
L 12/19/2016 - 14:38:52: {3.052 15160 1743762    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743764    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 12
L 12/19/2016 - 14:38:52: {3.052 15160 1743765    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743767    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 14
L 12/19/2016 - 14:38:52: {3.052 15160 1743769    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743770    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 7
L 12/19/2016 - 14:38:52: {3.052 15160 1743772    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743774    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 22
L 12/19/2016 - 14:38:52: {3.052 15160 1743775    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743776    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 11
L 12/19/2016 - 14:38:52: {3.052 15160 1743778    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743779    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 15
L 12/19/2016 - 14:38:52: {3.052 15160 1743781    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743782    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 4
L 12/19/2016 - 14:38:52: {3.052 15160 1743783    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743784    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 16
L 12/19/2016 - 14:38:52: {3.052 15160 1743785    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743787    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 26
L 12/19/2016 - 14:38:52: {3.052 15160 1743789    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743791    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 18
L 12/19/2016 - 14:38:52: {3.052 15160 1743793    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743795    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 19
L 12/19/2016 - 14:38:52: {3.052 15160 1743797    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743798    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 17
L 12/19/2016 - 14:38:52: {3.052 15160 1743800    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743803    3}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 1
L 12/19/2016 - 14:38:52: {3.052 15160 1743804    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743806    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 6
L 12/19/2016 - 14:38:52: {3.052 15160 1743807    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743809    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743811    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743812    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 24
L 12/19/2016 - 14:38:52: {3.052 15160 1743814    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743815    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 2
L 12/19/2016 - 14:38:52: {3.052 15160 1743817    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:52: {3.052 15160 1743819    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 29
L 12/19/2016 - 14:38:53: {3.052 15160 1743820    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743821    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 9
L 12/19/2016 - 14:38:53: {3.052 15160 1743822    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743824    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 25
L 12/19/2016 - 14:38:53: {3.052 15160 1743826    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743828    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 5
L 12/19/2016 - 14:38:53: {3.052 15160 1743829    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743831    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 27
L 12/19/2016 - 14:38:53: {3.052 15160 1743832    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743833    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 20
L 12/19/2016 - 14:38:53: {3.052 15160 1743835    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743836    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 3
L 12/19/2016 - 14:38:53: {3.052 15160 1743838    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743839    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:53: {3.052 15160 1743842    3} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15160 1743844    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 8
L 12/19/2016 - 14:38:53: {3.052 15160 1743846    2} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15156 1743848    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:53: {3.052 15160 1743849    1} I AM ENTERING ON getUniqueRandomInteger(2) 5. maximum: 30
L 12/19/2016 - 14:38:53: {3.052 15156 1743850    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:53: {3.052 14892 1743852    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 6
L 12/19/2016 - 14:38:53: {3.052 14908 1743853    1} OK!
L 12/19/2016 - 14:38:53: {3.052 14908 1743854    1}
L 12/19/2016 - 14:38:53: {3.052 14908 1743856    2}
L 12/19/2016 - 14:38:53: {3.052 14920 1743857    1}         EXECUTING TEST 7 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case7
L 12/19/2016 - 14:38:53: {3.052 15160 1743858    1} I AM ENTERING ON getUniqueRandomInteger(2) 6. maximum: 1
L 12/19/2016 - 14:38:53: {3.052 15160 1743859    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 1
L 12/19/2016 - 14:38:53: {3.052 15160 1743860    1} I AM ENTERING ON getUniqueRandomInteger(2) 6. maximum: 1
L 12/19/2016 - 14:38:53: {3.052 15160 1743862    2}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:53: {3.052 15160 1743864    2} I AM ENTERING ON getUniqueRandomInteger(2) 6. maximum: 1
L 12/19/2016 - 14:38:53: {3.052 15156 1743865    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:53: {3.052 15160 1743867    2} I AM ENTERING ON getUniqueRandomInteger(2) 6. maximum: 1
L 12/19/2016 - 14:38:53: {3.052 15156 1743868    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:53: {3.052 14892 1743870    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 7
L 12/19/2016 - 14:38:53: {3.052 14908 1743872    2} OK!
L 12/19/2016 - 14:38:53: {3.052 14908 1743873    1}
L 12/19/2016 - 14:38:53: {3.052 14908 1743875    2}
L 12/19/2016 - 14:38:53: {3.052 14920 1743876    1}         EXECUTING TEST 8 WITH 0 SECONDS DELAY - test_getUniqueRandomInteger.aa_case8
L 12/19/2016 - 14:38:53: {3.052 15160 1743879    3} I AM ENTERING ON getUniqueRandomInteger(2) 7. maximum: 0
L 12/19/2016 - 14:38:53: {3.052 15160 1743880    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: 0
L 12/19/2016 - 14:38:53: {3.052 15160 1743883    3} I AM ENTERING ON getUniqueRandomInteger(2) 7. maximum: 0
L 12/19/2016 - 14:38:53: {3.052 15156 1743884    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:53: {3.052 15160 1743886    2} I AM ENTERING ON getUniqueRandomInteger(2) 7. maximum: 0
L 12/19/2016 - 14:38:53: {3.052 15156 1743887    1}     ( getUniqueRandomInteger ) Just Returning the randomInteger: -1
L 12/19/2016 - 14:38:53: {3.052 16264 1743889    2} ( displaysLastTestOk ) numberOfFailures: 0, lastFailure: 0, lastTestId: 8
L 12/19/2016 - 14:38:53: {3.052 16280 1743891    2} OK!
L 12/19/2016 - 14:38:53: {3.052 16020 1744517    2}
L 12/19/2016 - 14:38:53: {3.052 16020 1744520    3}
L 12/19/2016 - 14:38:53: {3.052 16020 1744522    2}     The following tests were executed:
L 12/19/2016 - 14:38:53: {3.052 16020 1744524    2}
L 12/19/2016 - 14:38:53: {3.052 16004 1744526    2}          1. test_getUniqueRandomInteger.aa_case1
L 12/19/2016 - 14:38:53: {3.052 16004 1744528    2}          2. test_getUniqueRandomInteger.aa_case2
L 12/19/2016 - 14:38:53: {3.052 16004 1744530    2}          3. test_getUniqueRandomInteger.aa_case3
L 12/19/2016 - 14:38:53: {3.052 16004 1744531    1}          4. test_getUniqueRandomInteger.aa_case4
L 12/19/2016 - 14:38:53: {3.052 16004 1744532    1}          5. test_getUniqueRandomInteger.aa_case5
L 12/19/2016 - 14:38:53: {3.052 16004 1744534    2}          6. test_getUniqueRandomInteger.aa_case6
L 12/19/2016 - 14:38:53: {3.052 16004 1744535    1}          7. test_getUniqueRandomInteger.aa_case7
L 12/19/2016 - 14:38:53: {3.052 16004 1744536    1}          8. test_getUniqueRandomInteger.aa_case8
L 12/19/2016 - 14:38:53: {3.052 14992 1744537    1}
L 12/19/2016 - 14:38:53: {3.052 14984 1744538    1}     8 tests succeed.
L 12/19/2016 - 14:38:53: {3.052 14988 1744540    2}     0 tests failed.
L 12/19/2016 - 14:38:53: {3.052 16280 1744543    3}
L 12/19/2016 - 14:38:53: {3.052 16268 1744544    1}     Finished the Galileo's Unit Tests execution after '4' seconds.
L 12/19/2016 - 14:38:53: {3.052 16280 1744546    2}
L 12/19/2016 - 14:38:53: {3.052 16280 1744547    1}

Quote:
Originally Posted by JusTGo View Post
its kinda complicated for simple task.
Generate unique random numbers is not a simple task, anyways it seems pretty simple to me.
__________________
Plugin: Sublime Text - ITE , Galileo
Multi-Mod: Manager / Plugin / Server

Support me on Patreon, Ko-fi, Liberapay or Open Collective

Last edited by addons_zz; 12-19-2016 at 11:56.
addons_zz is offline
Craxor
Veteran Member
Join Date: Jan 2016
Location: Romania
Old 12-19-2016 , 12:32   Re: [code] infinity loop
Reply With Quote #14

looks realy hardcoded.
__________________
Project: Among Us
Craxor is offline
Send a message via ICQ to Craxor
addons_zz
Veteran Member
Join Date: Aug 2015
Location: Dreams, zz
Old 12-19-2016 , 12:38   Re: [code] infinity loop
Reply With Quote #15

But it is hard coded. Here they are from 0 until 31 because it is just what I need.
To create a general function to generate random numbers, would be necessary more code, and there are several ways of doing it.
__________________
Plugin: Sublime Text - ITE , Galileo
Multi-Mod: Manager / Plugin / Server

Support me on Patreon, Ko-fi, Liberapay or Open Collective

Last edited by addons_zz; 12-19-2016 at 12:41.
addons_zz is offline
PRoSToTeM@
Veteran Member
Join Date: Jan 2010
Location: Russia, Ivanovo
Old 12-19-2016 , 15:36   Re: [code] infinity loop
Reply With Quote #16

Quote:
Originally Posted by addons_zz View Post
I just created a closed function, i.e., a stock to generate random unique numbers from 0 until 31:
???
Code:
// [minValue; maxValue]
GetUniqueRandomIntegers(values[], valueCount, minValue, maxValue) {
    new Array:allValues = ArrayCreate(1);
    
    for (new value = minValue; value <= maxValue; value++) {
        ArrayPushCell(allValues, value);
    }
    
    for (new i = 0; i < valueCount; i++) {
        new lastElemIdx = ArraySize(allValues) - 1;
        new idx = random_num(0, lastElemIdx);
        values[i] = ArrayGetCell(allValues, idx);
        ArraySwap(allValues, idx, lastElemIdx);
        ArrayDeleteItem(allValues, lastElemIdx);
    }
    
    ArrayDestroy(allValues);
}

public plugin_init()
{
    new values[7];
    GetUniqueRandomIntegers(values, sizeof(values), 1, 10);
    for (new i = 0; i < sizeof(values); i++) {
        server_print("%d", values[i]);
    }
__________________
PRoSToTeM@ is offline
Send a message via ICQ to PRoSToTeM@ Send a message via Skype™ to PRoSToTeM@
addons_zz
Veteran Member
Join Date: Aug 2015
Location: Dreams, zz
Old 12-19-2016 , 16:05   Re: [code] infinity loop
Reply With Quote #17

???

random = getRandom(0, 3)

vs

random[4]
GetUniqueRandomIntegers(values, sizeof(random), 0, 3);

Quote:
Originally Posted by addons_zz View Post
But it is hard coded. Here they are from 0 until 31 because it is just what I need.
To create a general function to generate random numbers, would be necessary more code, and there are several ways of doing it.
`more code` based on this thread initial strategy.
Anyways yours is clever, but resorts to dynamic arras and etc. Otherwise, mime resort dumb guesses and ifs on the `sortedIntegers != maximumBitField`.
__________________
Plugin: Sublime Text - ITE , Galileo
Multi-Mod: Manager / Plugin / Server

Support me on Patreon, Ko-fi, Liberapay or Open Collective
addons_zz is offline
PRoSToTeM@
Veteran Member
Join Date: Jan 2010
Location: Russia, Ivanovo
Old 12-19-2016 , 16:37   Re: [code] infinity loop
Reply With Quote #18

So, you can use this:
Code:
#if !defined MaxPlayersLimit
const MaxPlayersLimit = 32;
#endif

new bool:g_selectedPlayers[MaxPlayersLimit + 1];

public client_disconnect(player) {
    g_selectedPlayers[player] = false;
}

public IsPlayerAlive(player) {
    return is_user_alive(player);
}

public OnClientCmdChoosePlayerReceive(player) {
    new choosedPlayer = GetRandomUnselectedPlayer("IsPlayerAlive", g_selectedPlayers);
    
    new name[32];
    get_user_name(choosedPlayer, name, charsmax(name));
    client_print(player, print_chat, "%s", name);
}

public plugin_init()
{    
    register_clcmd("say /chooseplayer", "OnClientCmdChoosePlayerReceive");
}
Code:
#if !defined MaxPlayersLimit
const MaxPlayersLimit = 32;
#endif

stock GetPlayersByPredicate(players[MaxPlayersLimit], const predicateFuncName[]) {
#if !defined MaxClients
    static MaxClients = -1;
    if (MaxClients == -1) {
        MaxClients = get_maxplayers();
    }
#endif
    
    new count = 0;
    new predFuncId = get_func_id(predicateFuncName);
    for (new i = 1; i <= MaxClients; i++) {
        callfunc_begin_i(predFuncId);
        callfunc_push_int(i);
        if (bool:callfunc_end()) {
            players[count++] = i;
        }
    }
    
    return count;
}

stock GetRandomPlayersByPredicate(randomPlayers[], randomPlayerCount, const predicateFuncName[]) {
    static players[MaxPlayersLimit];
    new playerCount = GetPlayersByPredicate(players, predicateFuncName);
    
    new realCount = min(randomPlayerCount, playerCount);
    for (new i = 0; i < realCount; i++) {
        new rand = random_num(0, playerCount - 1);
        
        randomPlayers[i] = players[rand];
        players[rand] = players[playerCount - 1];
        
        playerCount--;
    }
    
    return realCount;
}

stock GetRandomPlayerByPredicate(const predicateFuncName[]) {
    new player[1];
    return GetRandomPlayersByPredicate(player, 1, predicateFuncName) ? player[0] : 0;
}

stock GetPlayersByPredicateEx(players[MaxPlayersLimit], const predicateFuncName[], const bool:additionalFilter[MaxPlayersLimit + 1]) {
#if !defined MaxClients
    static MaxClients = -1;
    if (MaxClients == -1) {
        MaxClients = get_maxplayers();
    }
#endif
    
    new count = 0;
    new predFuncId = get_func_id(predicateFuncName);
    for (new i = 1; i <= MaxClients; i++) {
        if (!additionalFilter[i]) {
            callfunc_begin_i(predFuncId);
            callfunc_push_int(i);
            if (bool:callfunc_end()) {
                players[count++] = i;
            }
        }
    }
    
    return count;
}

stock GetRandomPlayersByPredicateEx(randomPlayers[], randomPlayerCount, const predicateFuncName[], const bool:additionalFilter[MaxPlayersLimit + 1]) {
    static players[MaxPlayersLimit];
    new playerCount = GetPlayersByPredicateEx(players, predicateFuncName, additionalFilter);
    
    new realCount = min(randomPlayerCount, playerCount);
    for (new i = 0; i < realCount; i++) {
        new rand = random_num(0, playerCount - 1);
        
        randomPlayers[i] = players[rand];
        players[rand] = players[playerCount - 1];
        
        playerCount--;
    }
    
    return realCount;
}

stock GetRandomPlayerByPredicateEx(const predicateFuncName[], const bool:additionalFilter[MaxPlayersLimit + 1]) {
    new player[1];
    return GetRandomPlayersByPredicateEx(player, 1, predicateFuncName, additionalFilter) ? player[0] : 0;
}

stock GetRandomUnselectedPlayer(const predicateFuncName[], bool:isPlayerSelected[MaxPlayersLimit + 1]) {
    new player = GetRandomPlayerByPredicateEx(predicateFuncName, isPlayerSelected);
    if (!player) {
        arrayset(isPlayerSelected, 0, sizeof(isPlayerSelected));
        player = GetRandomPlayerByPredicate(predicateFuncName);
    }
    if (player) {
        isPlayerSelected[player] = true;
    }
    return player;
}
__________________
PRoSToTeM@ is offline
Send a message via ICQ to PRoSToTeM@ Send a message via Skype™ to PRoSToTeM@
Craxor
Veteran Member
Join Date: Jan 2016
Location: Romania
Old 12-21-2016 , 00:53   Re: [code] infinity loop
Reply With Quote #19

i would use nvault, checking for entries found and if is not existing making a uniquey number as key with data /1/
__________________
Project: Among Us
Craxor is offline
Send a message via ICQ to Craxor
HamletEagle
AMX Mod X Plugin Approver
Join Date: Sep 2013
Location: Romania
Old 12-21-2016 , 01:14   Re: [code] infinity loop
Reply With Quote #20

Quote:
Originally Posted by Craxor View Post
i would use nvault, checking for entries found and if is not existing making a uniquey number as key with data /1/
You shouldn't do that.
__________________
HamletEagle is offline
Old 12-21-2016, 02:18
Craxor
This message has been deleted by Craxor. Reason: one second please:)))
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 16:47.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode