Keep traversing digits from right to left . For every digit check if it is smaller than prev_dig
bool flag = true ; while ( no != 0 ) { if ( prev_dig < no % 10 ) { flag = false ; break ; } prev_dig = no % 10 ; no /= 10 ; }