不用循环,不用递归,输出1...100的数,这是一个最近很热门的话题,有很多人支持直接手写100条输出语句,大多数人支持使用递归,但是如果不允许使用递归,还有别的方式吗?毕竟,递归也是一种循环。其实,使用函数式语言,可以轻松做到:
不用循环,也不用递归,输出1。。。100之间的数。
下面是测试代码(看Html源码):
<script language="javascript">
var F=function(x)
{
document.write(x+",");
x++;
return x;
}
var F2=function(y)
{
return F(F(F(F(F(y)))));
}
var F3=function(z)
{
return F2(F2(F2(F2(F2(z)))));
}
F3(F3(F3(F3(1))));
</script>
F3(1)的结果将是25,这样,调用4次,就是我们想要的结果了。