OriginalPostID-249106
Discussion posts and replies are publicly visible
Hello again, Stefan!I used this advice to create a random alpha-numeric 17 character string [ the first character is always the number 1, followed by 16 random alpha-numeric characters. Ex: 1UPJY54FL8YP3L760 ]:
a!localVariables( local!alpha: joinarray( { 1, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }, { if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) } } ), { local!alpha } )
I want to know if this can be refactored & simplified to repeat this chorus n-times?:
{ if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ) }
This is how I imagined it would work (but doesn't):
a!localVariables( local!alpha: reduce( if( fixed(rand()*2, 0, true), fixed(rand()*10, 0, true), char(65 + tointeger(rand() * (90-65))) ), {1}, enum(16) ), local!alpha )
Does this help ?
a!localVariables( local!alpha: joinarray( { 1, a!forEach( items: enumerate( 16 ), expression: { if( fixed( rand() * 2, 0, true ), fixed( rand() * 10, 0, true ), char( 65 + tointeger( rand() * ( 90 - 65 ) ) ) ) } ) } ), { local!alpha } )