网站大量收购独家精品文档,联系QQ:2885784924

程序设计思想与方法幻灯片.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * End 程序设计思想与方法 董笑菊 电子信息与电气工程学院 计算机科学与工程系 教师信息 办公地点:电院楼群3号楼327室 电话602 E-mail dong-xj@ xjdong@ 网址 /~xiaoju/CT 助教 ? ? 作业 请确定通过Python验证后发给助教 每个星期日晚上12点之前 课程信息 教材 John M. Zelle Python Programming: An Introduction to Computer Science 参考资料 Jeffrey Elkner, Allen B. Downey, and Chris Meyers How to Think Like a Computer Scientist: Learning with Python. /thinkCSpy/ Python学习手册_第3版 课程信息 下载python 软件的地址 / cs190c:textsoft09 python 2.5/2.6 版 成绩组成 考试 作业、大作业 平时上机(共5次) 周次:3, 6, 9, 12, 15 时间:下午12:55到15:30(三学时) 地点:计算中心?房间 出勤 * * * 关于课程 课程名称是“程序设计思想与方法”, 教学内容对应于近年来国际上提出的 新课程—“计算思维” 计算思维应成为所有人的基本能力 与阅读, 书写, 算术能力一样! * * * 计算思维 computational thinking 计算思维是计算机科学家利用计算机解决问题时的思想和方法 计算机科学是关于“计算”的学问 计算思维建立在由人或机器执行的计算过程的能力和限制之上 了解计算机的能力,并充分利用 计算机只能按照给定的指令一步步做,无跳跃 按照计算机的特点去思考 计算思维的特点 是概念化思考, 而非编程 是基本能力, 而非机械的生搬硬套 是人的思考方式, 而非计算机的 是数学思维和工程思维的互补及组合 是思想, 而非人造物 人人皆有, 处处皆是 * 计算思维的例子 问题抽象, 表示, 建模 问题难度与机器的能力 问题解决的效率, 近似解, 失误率… 变难为易: 分解, 约简, 嵌入, 转换, 模拟 递归地思考 并行处理 类型检查 程序美学, 系统设计的简洁与优雅 * 计算思维的例子(续) 模块化 预取和缓存 图像缓存 对最坏情况的预防, 保护, 恢复 数据丢失 同步 启发式推理 规划, 学习, 调度 时空等不可兼得要素的权衡 …… * 日常生活中的计算思维 小学算术: 长除法, 最大公约数 查字典: 线性, 二分 排队: 先来先处理 整理扑克牌: 插入排序 书包: 预取与缓存 邮递员投递路线: 尽可能只经过一次 烧菜: 并行处理 生产: 流水线 …… * 计算思维对其他学科的影响 统计学中的机器学习 计算生物学, 生物信息学 计算博弈论 计算化学, 纳米计算 计算物理学, 量子计算 计算数学, 计算几何, 计算机证明定理 工程中的计算机模拟 医学影像分析 电子商务, 计算广告学 电影特效, 计算机作曲, NBA统计分析 …… * 对本课程的定位 学习计算机科学解决问题的思想方法,应用于其他专业领域 不是程序设计语言课程! 本课程需要编程, 以加深对计算思维的理解 坏消息: 学习编程语言需要掌握非常繁琐的细节 好消息: Python语言非常简单,易学易用 也不是算法和数据结构课程! 当然会学习这方面的一些基本技术 * 计算机与程序 问题的提出 当今时代,计算机几乎无处不在: 企业管理 产品设计 气象预报 电影制作 工业控制 游戏, 写文章, 上网, …… 问题:计算机究竟是什么?怎么能做这么多不同的事情? * * * * 通用计算机 计算机是具有如下特征的机器: 能够存储和处理信息 输入?处理?输出 信息处理由程序控制 计算机程序是一个详细的逐步执行的指令序列,告诉计算机该做什么 程序可改变: 不同的程序完成不同的处理任务 人们造了各种各样的计算机, 但: 所有计算机具有相同的能力! 软件统治硬件 程序决定了计算机做什么 没有程序, 计算机只是一堆废铁 程序设计: 编写软件的过程 程序设计极具挑战性 既要具备大视野 又要关注细枝末节 为何学程序设计? 做计算机的主人 乐趣 培养问题求解能力 * 什么是计算机科学? 并非研究计算机! 正如天文学不是研究望远镜的. – EWD CS要回答的基本问题: 什么是可计算的? 对此问题的回答有三种方式: 实际设计一个解决问题的算法 理论分析问题的可解性 无解的, 不是能行可解的 通过实验来研究问题 * 硬件基本知识 * 主存 CPU 输入设备 输出设备 次级存储器 硬件基本知识(续) 中央处

文档评论(0)

love87421 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档