parameters: sorted list of five card hand cards are integers denoted by value*10 +suit(0123) numpair = 0 num= 0 strt = 0 flush = 0 for(i 1->4) { if(card[i]/10==card[i-1]/10) { numpair++ num+=numpair+5 } else numpair= 0 if(card[i]/10==card[i-1]/10+1) strt +=1 if(card[i]%10==card[i-1]%10) flush +=1 } num2 = (flush==4)?35:0+(strt==4)?30:0 return max(num,num2)*1000 + card[4] //last card for highest card val... this returns the following vals strtflush 32 4of a kind 21 fullhouse 19 flush 17 strt 15 3of a kind 13 2pair 12 1pair 6 note how values are in order of precedence