概述:了解递归算法的实现过程,运用递归算法画图
什么是递归:递归也是一种循环。程序调用自身的编程技巧称为递归/程序自己调用自己/方法中调用方法本身。递归算法需要条件,也就是退出递归的目标。
格式
本次课的任务为利用递归算法画出下图
一 写一个界面
二 画第一个矩形
三 画第一个小矩形
出现了栈溢出错误
因为递归没有设置终止条件
四 类似的画出第二、三个小矩形
第二、三排
五 把矩形换成一般的图片
g.fillRect换成g.drawImage。要先创建对象,注意图片的路径最后要添加上图片名.图片格式。另外要注意以下g.drawImage的参数格式。利用random可以实现随机画图功能。
六 拓展任务
用递归算法画出下图
先写好方法
这里的重点是要知道递归的思路是什么,引入中间变量x4x5x6y4y5y6作为递归三角形的顶点,再画直线即可
之前的误区:没有引入中间变量直接递归,逻辑不清楚。最后画出的三角形是朝着内的,原因在于递归三角形的三个顶点之一是上一个三角形的顶点,另外的两个顶点是上一个三角形的两边中点。
在paint方法中调用
结果如下
给窗体和三角形分别添加颜色——参考第11课
最终执行的结果如下
今天的文章13Java第十三课 递归实现谢尔宾斯基地毯和三角形分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/8738.html