<%@ Page Language="C#" Trace="True" %>
<script runat="server">
// Lowercase 'base' is a keyword
public int Factorial(int Base){
if (Base <=0){
Trace.Warn("Factorial", "Invalid Base value: " + Base);
return 0;
}
else if(Base == 1){
Trace.Write ("Factorial", "Exit condition met, returning.");
return Base;
}
else {
Trace.Write("Factorial","Recursing, new value: " + (Base-1));
return (Base * Factorial(Base-1));
}
}
</script>
<html>
<head>
</head>
<body>
<%
Response.Write(Factorial(-1) + "<br>");
Response.Write(Factorial(5) + "<br>");
%>
</body>
</html>