关于《用穷举法解决问题》的质疑.docVIP

  • 18
  • 0
  • 约 4页
  • 2017-09-04 发布于重庆
  • 举报
关于《用穷举法解决问题》的质疑 安徽省固镇县湖沟中学 乔军 高中新课程《算法与程序设计》(选修)(教育科学出版社,2004年10月第一版,2007年6月第6次印刷的第三章算法的程序实现,“3.2用穷举法解决问题”我认为有不妥之处。 设计穷举法的关键是确定穷举对象的范围,穷举对象不能有遗漏,否则穷举不全面;确定范围后,只要将所有对象逐一列举,分别处理,就能最终解决问题。 我们用教材3.2用穷举法解决问题所给的算法解决下面班级学习小组的分组情况的例子来分析它的不妥之处。 例:安徽省固镇县湖沟中学高二(6)班共有60名同学,现在要分成若干个学习小组,规则一:每组最小N1(4)人,最多N2(7)人;规则二:如果不能平均分组,则各小组间人数之差不得多于1人。 首先按小组数穷举法确定穷举对象的范围。 最大组数Max的确定: Max=M\N1=60\4=15 分配结果总能满足条件。 最小组数Min的确定: 若M除以N2没有余数,则Min=M\N2 若M除以N2有余数,则Min=M\(N2-1)=60\(7-1)=10(组) 其次按组数(N)穷举从Min到Max之间所有可能的分配方案,进行分组时,先平均分配人数,如果余数(R)为0,说明能平均分配,直接输出分配结果,否则,将余数分散到其他组中,这样将会有N-R级M\N人,R组M\N+1人。 分组的程序流程图如右图所示: 这个问题是根据教材提供的方

文档评论(0)

1亿VIP精品文档

相关文档