练习1.3: 请定义一个过程,它以三个数为参数,返回齐其中较大的两个数之和。
如果让我来写这段代码,我会这么写:
上面的代码真的就是普普通通、中规中矩,简单的完成了题目所要求的功能,几乎没有任何美感之言。当然从正确性上说,也没考虑结果 的情况。
下面我们来欣赏下Joe给出的堪称艺术品的代码:
这段代码真的是非常的巧妙,真的是达到了如何判断一件作品是否是艺术的四个标准:
- 这段代码非人不能写出,富于想象力
- 这段代码除了实现既定功能外,具有高度的表现力
- 这段代码传递的美感和思想超越了它自身
- 总之,这段代码很美
—Joe Marshall
这段代码的巧妙之处在于利用函数调用的栈完成了参数的移动,表现力极强。总之,这段代码很美。我是同意的。
秉着学以致用的原则,我们能从上面这段代码所学的技巧能不能有所用处呢者接着往下看
问题:给定三个数,求其中的最小值。
在编程课上我们绝大多数都做过类似的编程练习,来练习 的使用。通常的代码是这个样子的:
代码一
这段代码实在是太普通了,我们再看下一段
代码二
比代码一似乎好了些,但是距离我们称之为艺术品的代码还差的很远。我们来模仿下上文提到的堪称艺术品的代码
代码三
以后遇到类似功能的代码,我们也可以炫技一下。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!