Professional Documents
Culture Documents
Analisa :
Non tail = return n*factorial(n-1)
2. Listing Program :
3. Listing Program :
Analisa :
Non-tail : return fibonacci(n-1) + fibonacci(n-2)
4. Listing Program :
Analisa :
Non-tail : return rows+triangle(rows-1)
5. Listing Program :
Analisa :
Non-tail : return bunnyEars2(bunnies-1)+3/2
6. Listing Program :
Analisa :
Non-tail : return count8(n/10), dll
7. Listing Program :
8. Listing Program :
if(n==0)
return 0;
if(n%10==7)
return 1+count7(n/10);
return count7(n/10);
}
Outputnya :
Analisa :
Non-tail : return 1+count7(n/10)
Tail : return count7(n/10)
9. Listing Program :
if(str.length()==0)
return 0;
else if(str.charAt(0)=='x')
return countX(str.substring(1))+1;
else
return countX(str.substring(1));
}
Outputnya :
Analisa :
Non-tail : return countX(str.substring(1))+1 & return countX(str.substring(1))
Analisa :
Non-tail : return ‘y’ + changeXY(str.substring(1))
Tail : return ch + changeXY(str.substring(1))
12. Listing Program :
Analisa :
Non-tail : return “3.14” + changePi(str.substring(2))
Tail : return str.charAt(0) + changePI(str.substring(1))
Analisa :
Non-tail : return strCount(str.substring(1), sub)
Analisa :
Non-tail : str.charAt(0) + “*” + allStar(str.substring(1))
Analisa :
Non-tail : array11(nums, index+1)
Analisa :
r
Analisa :
Non-tail : return str.charAt(0) + endX(str.substring(1))
Analisa :
Non-tail : return nestParen(str.substring(1,str.length()-1))
Analisa :
Non-tail : return str.charAt(0) + pairStar(str.substring(1))
Analisa :
Non-tail : return parenBit(str.substring(0, str.length() – 1 ))
Analisa :
Non-tail : return str.charAt(0) + stringClean(str.substring(1))
Analisa :
Non-tail : return strDist(str.substring(1), sub)