1 / 53
文档名称:

2021年项目三基本算法.ppt

格式:ppt   大小:280KB   页数:53页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

2021年项目三基本算法.ppt

上传人:业精于勤 2021/1/15 文件大小:280 KB

下载得到文件列表

2021年项目三基本算法.ppt

相关文档

文档介绍

文档介绍:课程回顾
1. while(条件)
{ 循环体内语句 }
2. do
{ 循环体内语句
} while(条件);
3. for( ~ ; ~ ; ~ )
{ 循环体内语句 }
当条件满足时
循环体
当条件满足时
循环体
*
项目三 基本算法
*
项目三 基本算法应用
【百鸡问题】公元五世纪末,我国古代数学家张丘建在《算经》中提出了如下问题:
鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。凡百钱买百鸡,问鸡翁、母、雏各几何?
问题引入
什么类型的问题?
C语言如何解决?
现实生活中有各种要处理的问题
*
项目三 基本算法
*
项目三 基本算法应用
算法
算法(Algorithm):是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令。
程序仅仅是用某种计算机语言所描述的算法,是算法的实现形式。
算法是程序的灵魂,程序设计的核心就是算法设计。
算法设计的实质就是克服客观的复杂性,建立问题的求解模型。
*
项目三 基本算法
*
项目三 基本算法应用
项目任务
求和、求阶乘算法
穷举算法
最大公约数、最小公倍数
求素数算法
递推与迭代算法
*
项目三 基本算法
*
项目三 基本算法应用
理解算法的概念
掌握求和、求阶乘算法
掌握穷举算法
掌握最大公约数、最小公倍数
掌握求素数算法
掌握递推与迭代算法
项目目标
*
项目三 基本算法
*
项目三 基本算法应用
任务 求和、求阶乘算法
sum=1+(1+2!)+(1+2!+3!)+…+(1+2!+3!+4!+…+10!)
此题可看作几项求和?
后一项与前一项之间比较有什么特点?
第n项的值?
分组讨论:
项数:1 2 3 … 10
*
项目三 基本算法
*
[ SF1-1 ] 求 Sum = 1 + 2 + 3 + 5 + … +100
[ SF1-2 ] 求 P = 10!
[ SF1-3 ] 求 Sum = 1! + 2! + 3! + … + 10!
SF1-1
SF1-2
SF1-3
[SF1] 求:1+(1+2!)+(1+2!+3!)+…+(1+2!+3!+4!+…+10!)
*
项目三 基本算法
*
有许多问题的解“隐藏”在多个可能之中。穷举就是对多种可能情形一一测试,从多种可能中找出符合条件的(一个或一组)解。当然,也可能得出无解的结论。
穷举算法
任务描述:
*
项目三 基本算法
*
【SF2】百钱买百鸡问题
鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。凡百钱买百鸡,问鸡翁、母、雏各几何?
分组讨论:
此问题可以列出几个方程?
请列出相应方程?
此题有唯一解否,如何解?
*
项目三 基本算法
*
设鸡翁、鸡母、鸡雏的数量分别为cocks、hens、chicks,则可得如下模型:
5 * cocks + 3 * hens + chicks / = 100
cocks + hens + chicks = 100
下面考虑如何寻找另外的约束条件。
按常识,cocks、hens、chicks都应为正整数,且它们的取值范围分别应为:
  cocks:0~20 (假如100元全买cocks,最多20只)
hens:0~33(假如100元全买hens,最多33只)
chicks:0~100(假如全买chicks,最多100只)
分组讨论分析
*
项目三 基本算法
*