《程序设计基础》课程教学课件(PPT讲稿)02 程序设计基础2_算法设计基础(课后阅读)

程序设计基础(B)I 主讲:刘晓红 Tel:13969301061 Email:Ixhsdut@163.com Office:西9#409 ACM Lab:西9#409、501、504、508 1/33
程序设计基础(B)I 1/33 主讲:刘晓红 Tel:13969301061 Email:lxhsdut@163.com Office:西9#409 ACM Lab:西9#409、501、504、508

第2章 算法设计基础 鸣谢张立红老师整理 2/33
第2章 算法设计基础 鸣谢张立红老师整理 2/33

程序设计的目的:计算机按照设定的执行流程完成指定任务。 序设计的关键: ①对什么样的数据进行处理? ◆明确处理对象,给出准确的数据化描述; ◆根据需求,确定数据类型、元素之间的相互关系,组织数据的存 储结构。 ②如何对数据进行处理? ◆明确对处理对象的操作流程; ◆程序的指令组成,指令的排列顺序
① 对什么样的数据进行处理 ? ◆明确处理对象,给出准确的数据化描述; ◆根据需求,确定数据类型、元素之间的相互关系,组织数据的存 储结构 。 ② 如何对数据进行处理 ? ◆明确对处理对象的操作流程; ◆程序的指令组成,指令的排列顺序。 程序设计的目的:计算机按照设定的执行流程完成指定任务。 程序设计的关键:

程序=数据结构+算法 对数据的描述,即数据结 构。在C语言中,系统提 供的数据结构,是以数据 类型的形式出现的。 对数据处理的描述,即计 算机算法。算法是为解决 获得图灵奖的Pascal之父 一个问题而采取的方法和 Niklaus Wirth 步骤,是程序的灵魂。 瑞典人伯克利斯坦福 4/33
程序=数据结构+算法 ◼ 对数据处理的描述,即计 算机算法。算法是为解决 一个问题而采取的方法和 步骤,是程序的灵魂。 获得图灵奖的Pascal之父 Niklaus Wirth 瑞典人 伯克利 斯坦福 ◼ 对数据的描述,即数据结 构。在C语言中,系统提 供的数据结构,是以数据 类型的形式出现的。 4/33

本章知识点 2.1什么是算法 ■2.2算法的特征 ■2.3算法的表示方法(重点) ■2.4程序设计中常用的方法 恩 5/33
本章知识点 ◼ 2.1 什么是算法 ◼ 2.2 算法的特征 ◼ 2.3 算法的表示方法(重点) ◼ 2.4 程序设计中常用的方法 5/33

2.1什么是算法 程序=数据结构+算法。 算法:解决问题的方法与步骤。 程序:算法的具体实现。 程序设计语言: 是程序开发工具,即是将算法转化为程序的开发工具 学习程序设计,不仅要熟练掌握程序设计语言 本身的特点、语法规则等,更重要的是掌握分 析问题、解决问题的方法,就是锻炼分析、分 解,最终归纳整理出算法的能力。 6/33
程序 = 数据结构 + 算法。 算法:解决问题的方法与步骤。 程序:算法的具体实现。 程序设计语言: 是程序开发工具,即是将算法转化为程序的开发工具 学习程序设计,不仅要熟练掌握程序设计语言 本身的特点、语法规则等,更重要的是掌握分 析问题、解决问题的方法,就是锻炼分析、分 解,最终归纳整理出算法的能力。 2.1 什么是算法 6/33

2.1.2计算机算法的分类 计算机算法可分为两大类别: 1)数值运算算法 2)非数值运算算法 ,数值运算的目的是求数值解 例如:求方程的根 ,非数值运算包括的面十分广泛,最常见的是用 于事务管理领域 例如:如图书检索、学籍管理
2.1.2 计算机算法的分类 ➢ 计算机算法可分为两大类别: 1)数值运算算法 2)非数值运算算法 ➢ 数值运算的目的是求数值解 例如:求方程的根 ➢ 非数值运算包括的面十分广泛,最常见的是用 于事务管理领域 例如:如图书检索、学籍管理

2.1.3 简单的算法举例 例2.1求1×2×3×4×5 原始方法: 太繁琐 >步骤1:求1*2,得到结果2。 ,步骤2:将步骤1得到的2再乘以3,到结果6。 ,步骤3:将6再乘以4,得24。 >步骤4:将24再乘以5,得120。 120-最后的结果。 求1×2×3×4×5×6×.×100?
2.1.3 简单的算法举例 ◼ 原始方法: ➢ 步骤1:求1*2,得到结果2。 ➢ 步骤2:将步骤1得到的2再乘以3,得到结果6。 ➢ 步骤3:将6再乘以4,得24。 ➢ 步骤4:将24再乘以5,得120。 120-最后的结果。 例2.1 求1×2×3×4×5 太繁琐 求1×2×3×4×5 ×6×. ×100?

例2.1求1×2×3×4×5 算法: 5改为10,求什么? ① 设变量p为被乘数,变量为乘数 ② 初值p=1,i=1 ③ 令p与i相乘,乘积仍放在变量p中,即: p*i→p ④ 使i的值加1,即i+1→i ⑤ 如果i不大于5,返回重新执行③:否则,结束 最后得到p的值就是5!的值
新算法: ① 设变量p为被乘数,变量i为乘数 ② 初值 p=1,i=1 ③ 令 p 与 i 相乘,乘积仍放在变量 p 中,即: p*ip ④ 使 i 的值加1,即 i+1 i ⑤ 如果 i 不大于 5,返回重新执行 ③;否则,结束 ⑥ 最后得到 p 的值就是 5! 的值 5改为10,求什么? 例2.1 求1×2×3×4×5

例2.1的扩展:求1×3×5×7×9 新算法: ① 设变量p为被乘数,变量为乘数 ② 初值p=1,i=2 ③ 令p与i相乘,乘积仍放在变量p中,即: p*i→p ④ 使i的值加2,即i+2→i ⑤ 如果ⅰ不大于9,返回重新执行③:否则,结束 最后得到p的值就是1×3×5×7×9的值
新算法: ① 设变量p为被乘数,变量i为乘数 ② 初值 p=1,i=2 ③ 令 p 与 i 相乘,乘积仍放在变量 p 中,即: p*ip ④ 使 i 的值加2,即 i+2 i ⑤ 如果 i 不大于 9,返回重新执行 ③;否则,结束 ⑥ 最后得到 p 的值就是 1×3×5×7×9 的值 例2.1的扩展: 求1×3×5×7×9
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《程序设计基础》课程教学课件(PPT讲稿)03 程序设计基础3_基本数据类型(讲授3).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)04 程序设计基础4_顺序控制结构与数据的输入输出(讲授4).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)05 程序设计基础5_分支控制结构(讲授5).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)06 程序设计基础6_循环控制结构(讲授6 while do_while).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)07 程序设计基础6_循环控制结构(讲授7 for).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)08 程序设计基础6_循环控制结构(讲授8 循环嵌套 应用举例).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)09 程序设计基础7_函数(讲授9 函数定义和调用).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)10 程序设计基础7_函数(讲授10 函数的嵌套调用与递归).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)11 程序设计基础7_函数(讲授11 函数作用域和存储类别).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)12 程序设计基础8_数组(讲授12 一维数组定义与使用).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)13 程序设计基础8_数组(讲授13 冒泡和选择排序).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)14 程序设计基础8_数组(讲授14 数组与函数参数).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)15 程序设计基础8_数组(讲授15 二维数组).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)16 程序设计基础9_指针(讲授16 地址与指针+指针变量).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)17 程序设计基础9_指针(讲授17 指向数组的指针变量).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)18 程序设计基础10_字符数组(讲授18 字符数组).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)19 程序设计基础10_字符数组(讲授19 指向字符串的指针变量).ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第1章 Java入门(任课教师:褚燕华).ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第2章 Java程序设计基础.ppt
- 内蒙古科技大学:《Java编程》课程教学课件(PPT讲稿)第3章 数组与字符串.ppt
- 《程序设计基础》课程教学课件(PPT讲稿)02 程序设计基础2_算法设计基础(讲授2).ppt
- 《程序设计基础》课程教学课件(PPT讲稿)01 程序设计基础1_程序设计引论(讲授1).ppt
- 《程序设计基础》课程教学资源(教材讲义)5、贪心与动归.pdf
- 《程序设计基础》课程教学资源(教材讲义)4、递推与递归.pdf
- 《程序设计基础》课程教学资源(教材讲义)3、链表.pdf
- 《程序设计基础》课程教学资源(教材讲义)2、文件.pdf
- 《程序设计基础》课程教学资源(教材讲义)1、结构体.pdf
- 《计算机网络》课程教学资源(PPT课件讲稿)第九章 无线网络.pdf
- 《计算机网络》课程教学资源(PPT课件讲稿)第七章 网络安全.pdf
- 《计算机网络》课程教学资源(PPT课件讲稿)第六章 应用层.pdf
- 《计算机网络》课程教学资源(PPT课件讲稿)第五章 运输层.pdf
- 《计算机网络》课程教学资源(PPT课件讲稿)第四章 网络层.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)第三章 链路层.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)第二章 物理层.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)第一章 概述.ppt
- 《计算机网络》课程课后习题答案(参考).doc
- 《数据结构与算法分析》课程教学资源(书籍文献)数据结构与算法分析.pdf
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第七章 图.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第六章 树与二叉树.ppt
- 《数据结构与算法分析》课程教学课件(PPT讲稿)第五章 数组与广义表.ppt
