if(basecase1){// return some simple expression}elseif(basecase2){// return some simple expression}elseif(basecase3){// return some simple expression}elseif(recursivecase1){// some work before // recursive call // some work after }elseif(recursivecase2){// some work before // recursive call // some work after }else{// recursive case 3 // some work before // recursive call // some work after }
if(basecase1)// return some simple expressionelseif(basecase2)// return some simple expressionelseif(basecase3)// return some simple expressionelseif(recursivecase1){// some work before // recursive call // some work after }elseif(recursivecase2){// some work before // recursive call // some work after }else{// recursive case 3 // some work before // recursive call // some work after }