资源简介 (共9张PPT)六年级上册 信息科技“韩信点兵”枚举法的实现第10课你将学习1.枚举法解决问题的一般过程。2.枚举法的程序实现。讨论你知道“韩信点兵”的故事吗?他是怎么快速算出士兵的总人数的?建构假如由你来“点兵”,你将采用何种算法?共1500人,战后,死伤四五百人,估计还有1000~1100人,3人一排,多出2人,5人一排,多出3人,7人一排,多出2人。韩信马上算出还有1073人。抽象与建模剩余士兵总人数用变量x表示抽象与建模枚举x在1000~1100范围内的每一个值,且同时满足:x除以3余数为2,x除以5余数为3,x除以7余数为2,满足条件的x,就是所求的解。当x=1000时,条件“x除以3余数为2,x除以5余数为3,x除以7余数为2”是否同时满足?当x=1001时,条件“x除以3余数为2,x除以5余数为3,x除以7余数为2”是否同时满足?……算法设计x依次取1000~1100范围内的值,采用循环结构;判断条件是否满足,采用分支结构算法的程序实现求余运算符: %x=1000while x<1101:if x%3==2 and x%5==3 and x%7==2:print("剩余的士兵数为:",x)x=x+1如:5%2,结果是1;17%3,结果是2。x除以3余数是2x%3==2x除以3余数是2,x除以5余数是3,x除以7余数是2判断多个条件是否同时满足,用逻辑运算符and来连接。x%3==2 and x%5==3 and x%7==2练习假如“韩信点兵”的问题描述修改为:有一次,韩信带领1500名士兵打仗。战后,死伤一二百人。剩下的士兵中,他命令士兵3人一排,结果多出1名;接着命令士兵5人一排,结果多出4名;又命令士兵7人一排,结果多出3名。请问剩下的士兵有多少人?请用枚举法设计算法解决上述问题。用Python语言编写。 展开更多...... 收起↑ 资源预览