解析法、枚举法例1:某超市规定,顾客购买同种商品10件以上(含10件)可享受批发价。请设计一个收款机程序,输入顾客所购买商品的零售价、批发价、购买数量、及付款数,计算出顾客的应付款及找零。变量分析:数学模型:应付款=找零=付款-应付款零售价*数量,当数量<10批发价*数量,当数量>=10解析表达式程序代码:mand1_Click() 零售价=Val(InputBox("输入零售价:")) 批发价=Val(InputBox("输入批发价:")) 数量=Val(InputBox("输入购买数量:")) 付款=Val(InputBox("输入付款数:")) If数量<10Then 应付款=零售价*数量 Else ___________________ EndIf _____________________ Print"应付款:",应付款 Print"找零",找零EndSub应付款=批发价*数量找零=付款-应付款解析法:就是在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干解析表达式表示出来,解决了这些表达式,问题也就得以解决。用解析法解决问题的关键是寻找_______。解析表达式练****已有的研究成果表明,海拔每升高100米,℃。编写程序输入山下的气温及山顶的相对海拔高度,输出山顶的气温。mand1_Click() t0=Val(InputBox(“输入山下的气温:")) h=Val(InputBox(“输入山顶的相对海拔高度:")) t=_______________ Print“山顶的气温为:",t EndSubt0-h/100*:钻石是由点和线构成的,如图所示。图形四周的点位于同一个圆周上,点与点之间都有一条线段相连,因此只要绘制出各点间的线段就能绘出这个图形。绘制钻石建立坐标系。平均取N个点,将圆N等分,各点坐标为:x1=r*cos(θ)y1=r*sin(θ)x2=r*cos(2θ)y2=r*sin(2θ)……其中,θ=360/mand1_Click()Constpi=,jAsIntegerDimx1AsSingle,y1AsSingleDimx2AsSingle,(-,)-(,-)'=1nodes=15a=2*pi/nodes'弧度数Fori=1Tonodes'枚举求(x1,y1)x1=r*Cos(a*i)y1=r*Sin(a*i)Forj=1Tonodes'枚举求(x2,y2)Ifi<>jThenx2=r*Cos(a*j)y2=r*Sin(a*j)(x1,y1)-(x2,y2),vbBlue'画线EndIfNextjNextiEndSub注意:mand1例:韩信点兵今有物不知其数,三三数之余二,五五数之余三,七七数之余二,问物几何?求符合条件的最小的数。尝试用解析法解决:xmod3=2xmod5=3xmod7=2采取从小到大一一尝试的办法。很难得到有效的解析式。枚举法
第11、12课枚举和解析算法(两课时)高中信息技术选修一解析法穷举法课件 来自淘豆网www.taodocs.com转载请标明出处.