hnyzcj 发表于 2018-6-27 13:12:30

用Makecode 解决图形拼接问题2

本帖最后由 hnyzcj 于 2018-6-27 14:56 编辑

4个长是15厘米,宽5厘米的小长方形,拼成一个较大的长方形,最长是多少,最短是多少?编程求出周长。
分析问题:
       有题目可以得出正方形的拼接方法有如下几种。
拼法1:


拼法2:


拼法3:




拼法4:
      由上可以看出拼法多样,拼法3可以看出,单个的小长方形并不一定按照水平方向进行拼接,如果我们直接定义变量A,B作为其周长就很难判断,拼接方法,无法求出其周长。但仔细观察可以发现,无论采用什么样的拼接方式,其四个小长方形的面积是不变的。设定变量A,B分别代表水平方向上的长的个数,垂直方向上宽的个数。

设计算法:
a=0
b=0
max=0


for a=0 to 4
   for b=0to 4
         if(a*15)*(b*5)=300   then
             print a
             print b
               if2*(a*15+b*5)>max   then
                   max=2*(a*15+b*5)
               end if
         endif
   next a
next b



运行结果
a=4, b=1max=130
也就是当四个正方形水平排列时,周长最大。

测试验证:
       程序已经编写完成后,我们要用数据进行测试验证程序的兼容性。例如如果正方形的边长是40cm,10cm,6个,最大边长是多少?





rzyzzxw 发表于 2018-6-27 16:26:40

陈老师,这个系列真经典。{:5_148:}
页: [1]
查看完整版本: 用Makecode 解决图形拼接问题2