def ab = [ ]
def hasM = [ : ]
hasM = [ count: 0 , per: 85 , won: "Won 100 Points" ]
ab << hasM
hasM = [ count: 0 , per: 14 , won: "Won 500 Points" ]
ab << hasM
hasM = [ count: 0 , per: 1 , won: "Won Bike" ]
ab << hasM
for ( int i= 1 ; i<= 2000 ; i++ ) {
def total = i
def val = 1
def percen = ( val* 100 ) / total
// println "percen > "+percen
if ( total == 1 ) {
println "This is " + i + " User and won " + ab[ 0 ] .won
ab[ 0 ] .count ++
} else {
// println ab
def t0 = ( ab[ 0 ] .per - ( percen * ab[ 0 ] .count ) )
def t1 = ( ab[ 1 ] .per - ( percen * ab[ 1 ] .count ) )
def t2 = ( ab[ 2 ] .per - ( percen * ab[ 2 ] .count ) )
// println t0+" "+t1+" "+t2
def chek
if ( t0 >= t1 && t0 >= t2) {
chek = 0
} else if ( t1 >= t2) {
chek = 1
} else {
chek = 2
}
if ( chek == 0 ) {
// println "This is "+ i +" User and won "+ab[0].won
ab[ 0 ] .count ++
} else if ( chek == 1 ) {
// println "This is "+ i +" User and won "+ab[1].won
ab[ 1 ] .count ++
} else if ( chek == 2 ) {
// println "This is "+ i +" User and won "+ab[2].won
ab[ 2 ] .count ++
}
}
}
println ab
ZGVmIGFiID0gW10KZGVmIGhhc00gPSBbOl0KaGFzTSA9IFtjb3VudDowLCBwZXI6ODUsIHdvbjoiV29uIDEwMCBQb2ludHMiXQphYiA8PCBoYXNNCmhhc00gPSBbY291bnQ6MCwgcGVyOjE0LCB3b246IldvbiA1MDAgUG9pbnRzIl0KYWIgPDwgaGFzTQpoYXNNID0gW2NvdW50OjAsIHBlcjoxLCB3b246IldvbiBCaWtlIl0KYWIgPDwgaGFzTQoKCWZvcihpbnQgaT0xOyBpPD0yMDAwOyBpKyspewoJCWRlZiB0b3RhbCA9IGkKCQlkZWYgdmFsID0gMQoJCWRlZiBwZXJjZW4gPSAodmFsKjEwMCkvdG90YWwKLy8JCXByaW50bG4gInBlcmNlbiA+ICIrcGVyY2VuCgkJaWYodG90YWwgPT0gMSl7CgkJCXByaW50bG4gIlRoaXMgaXMgIisgaSArIiBVc2VyIGFuZCB3b24gIithYlswXS53b24KCQkJYWJbMF0uY291bnQrKwoJCX1lbHNlewovLwkJCXByaW50bG4gYWIKCQkJZGVmIHQwID0gKGFiWzBdLnBlciAtIChwZXJjZW4gKiBhYlswXS5jb3VudCkpCgkJCWRlZiB0MSA9IChhYlsxXS5wZXIgLSAocGVyY2VuICogYWJbMV0uY291bnQpKQoJCQlkZWYgdDIgPSAoYWJbMl0ucGVyIC0gKHBlcmNlbiAqIGFiWzJdLmNvdW50KSkKLy8JCQlwcmludGxuIHQwKyIgIit0MSsiICIrdDIKCQkJZGVmIGNoZWsKCQkJaWYodDAgPj0gdDEgJiYgdDAgPj0gdDIpewoJCQkJY2hlayA9IDAKCQkJfWVsc2UgaWYodDEgPj0gdDIpewoJCQkJY2hlayA9IDEKCQkJfWVsc2V7CgkJCQljaGVrID0gMgoJCQl9CgkJCWlmKCBjaGVrID09IDApewovLwkJCQlwcmludGxuICJUaGlzIGlzICIrIGkgKyIgVXNlciBhbmQgd29uICIrYWJbMF0ud29uCgkJCQlhYlswXS5jb3VudCsrCgkJCX1lbHNlIGlmKGNoZWsgPT0gMSl7Ci8vCQkJCXByaW50bG4gIlRoaXMgaXMgIisgaSArIiBVc2VyIGFuZCB3b24gIithYlsxXS53b24KCQkJCWFiWzFdLmNvdW50KysKCQkJfWVsc2UgaWYoY2hlayA9PSAyKXsKLy8JCQkJcHJpbnRsbiAiVGhpcyBpcyAiKyBpICsiIFVzZXIgYW5kIHdvbiAiK2FiWzJdLndvbgoJCQkJYWJbMl0uY291bnQrKwoJCQl9CQoJCX0KCX0KcHJpbnRsbiBhYgo=
stdout
This is 1 User and won Won 100 Points
[[count:1700, per:85, won:Won 100 Points], [count:280, per:14, won:Won 500 Points], [count:20, per:1, won:Won Bike]]