程序设计基础流程图以及进制的介绍

一、为什么学习本门课程:
每个人都应该学习给电脑编写程序的技术,因为这一过程能够教你如何去思考!——史蒂夫·乔布斯
对一名软件工程师来说,什么是最重要的?是编程语言吗?如果你问100名工程师,那么100个人回答可能都是“No”。
编程语言层出不穷,不胜枚举,能够以不变应万变的奥秘何在?答案就是“编程之魂”。
传统的编程入门课,都是从教授一种语言的基本语法开始的,试图通过语言来传达“编程之魂”,但这样也许你会将更多的精力用在理解语言的语法细节上,只见树木不见森林。
本课程的目标是为未来的编程高手打下最坚实的基础,将学习编程之前你该了解的那些事,从具体的语言中独立出来,剥茧抽丝,取其灵魂,聚焦于程序设计思维的建立。
期望通过这样的内容安排和讲解,你在学完以后不只是简单地掌握了一种语言的语法,还能理解隐含在语法背后的思想,并初步具备灵活使用这些思想进行编写程序解决实际问题的能力。
本课程面向的是零基础的人群,就像学钢琴要先学好乐理和练好指法而不要急于去弹小汤一样,我们会从你无论学习什么语言编程都应必备的基础知识讲起,这些内容不涉及代码,也与语言无关,但却对训练你的思维至关重要,学完这些你才能真正理解计算机为什么能解题以及计算机是如何解题的,而语言不过是实现这一求解过程的一种工具而已。当你回头看时,你会发现,学习编程的关键不是你能用自己熟悉的语言写出程序,而是能够针对要解决的问题,将问题转化为计算机求解的步骤。这也正是我们安排前这一个月课程的意义所在。
你一定感到奇怪:不学语言,也可以学习程序设计;不写代码,也可以运行“程序”。这是真的吗?究竟是“真”是“假”,在本门课程“程序设计基础”中,你可以找到答案。
人生怎能没有一次说走就走的旅行?你是不是期待已久并早已跃跃欲试了呢?那就快快加入我们,和我们一起踏上程序设计之旅吧。
二、学习本门课程的方法
本课程在教学过程中,培养学生用程序设计语言解思想解决实际问题的能力;强调在解题实践中掌握程序设计的基本概念、基本思想和基本方法;突出对编程思想的阐述和计算思维的训练。
在授课过程中,主要分为三部分:一是:面向过程语言的思想讲解和实现过程,这里主要用的是visio流程图和Raptor图;二是:面向对象语言的思想和分析过程,这里不讲解设计过程,只分析,为后面的面向对象语言打下一个基础;三是:图论部分,这里将介绍图及树及有向图的概念,让学生理论图的意义。本月教师会注重解释“为什么”,揭示知识点背后的原理和思想,根据案例适时引入错误程序的分析、测试与调试,将一些易被忽视且对高水平程序设计很重要的“点”逐一展现给你,沿着数据结构从简单到复杂的主线展开,将软件工程相关的思想和方法渗透其中,从紧密结合实际的问题出发,在个例的“不断深化和提升”中逐步引出相关知识点,通过对问题的举一反三和前后知识点的融会贯通,由浅入深地启发引导你循序渐进地编程,让你在不知不觉中逐步加深对程序设计方法的了解和掌握。
三、教学目标
(一)知识目标(学什么知识)
1.了解计算机的基本组成,工作原理及机器码二进制的原码,反码,补码运算
2.在不接触语言的基础上学习算法的概念及描述方法
3.学会用流程图方法绘制解决顺序结构与选择结构的方法步骤
4.学会用流程图方法绘制解决循环结构的方法步骤
5.学会用流程图方法绘制解决循环嵌套的方法步骤
6.不写代码的基础上让自己的解决思路实现—Raptor算法速成工具
7.掌握基础的常用算法
8.掌握利用Raptor实现算法三大结构的应用过程
9.掌握面向对象程序设计的思想
(二)能力目标(产出物是什么)
1.训练学生的思维,真正理解计算机为什么能解题以及计算机是如何解题的,而语言不过是实现这一求解过程的一种工具而已。面向过程及面向对象的思维逻辑能力。
2.掌握实现程序设计三大算法结构的流程图绘制能力。
3.掌握实现程序设计三大算法结构的Raptor图绘制及解决问题的实际能力。
4.掌握对程序问题的分析、解决、测试与调试过程。
四、参考教材
1.推荐网站:http://www.icourse163.org/home.htm?userId=1023208056
2.《程序设计基础》苏小红、赵玲玲等,高等教育出版社
3.《面向对象分析与设计》每2版、麻志毅编著,机械工业出版社
4.参考附件RAPTOR程序设计例题参考答案(相关案例答案都有)
注:讨论(标红)部分不作为考核部分,学生可以通过度娘或相关资料来查相关知识点充实自己
注:标浅粉表格内容也是考核点部分

第一单元:计算机工作原理
首先,在家想一想为什么这门课叫程序设计基础呢?大家知道有C语言、C++语言,Java等等。大家是否想过这些语言的共性是什么呢?2000年各大高校选用C语言来教学,2005年部分高校开始选择Java语言来教学,现在又有部分高校选择Python语言来教学,程序设计与语言的关系在不继弱化,不变的是大家都在学程序设计,这就是语言的共性这门课的宗旨就是提取程序设计中与具体语言无关的知识信息爆炸单独一门课程进行讲解,重点关注与具体语言无关的知识,比如控制结构,算法、解决问题的运算思维等等,这样就可以把握所有语言的共性,以不变应万变。当然我们也要先掌握一下C语言的基础知识,因为只有C语言是面向过程设计语言(面向过程先知道即可),更好的为其它的语言应用打下良好的基础知识。
下面我们先来看下计算机与人工智能,计算机系统换句话说,也就是计算机的昨天、今天和明天。
一、计算机与人工智能、计算机系统:
我们通过以下几位人物来看计算机的发展变革,智能计算机及系统的组成。
第1 位他是改变世界的第三个苹果的缔造者,是电脑业界与娱乐业界的标志性人物,他为我们留下众多的传世之作--------乔布斯。
第2位他是个人时代当之无愧的领军人物,他的软件产品遍布世界每一个角落,软件产品遍布世界每一个角落而他也当仁不让地长期霸占世界首富的桂冠----------比尔盖茨。
第3位他是少年天才、曾享受与爱因斯坦同学等的待遇(不用给学生上课)是计算机史上著名的“101页报名”的作者之一,被誉为“现代计算机之父”-------冯诺依曼
第4位他曾协助军方破解德国的著名密码系统Eniama,他提出著名模型为现代计算机的逻辑工作方式奠定为基础,被誉为“计算机科学之父”-----阿兰图灵。
图灵测试为人工智能打开了开端,图灵测试请查阅度娘进行了解,其实每天我们都在被测试,大家所每天用电脑的各种登录过程,其实也就是测试我们的过程,所以说电脑也具有人工智能?
人工智能(Artificial Intelligence ,简称AI)是让计算机具有执行某些与人类智能活动有关的复杂的功能(如判断、推理、识别、理解、学习、规划和问题求解等)的能力。简单地说就让计算机和人一样,也就是机器人。
大家可以看一下以下几部电影,在这些电影里都提到了机器人,也就是人工智能。
《变形金刚》
《人工智能》
《终结者》系列
《黑客帝国》三部曲
下面我们来看一下人机大战史
1958年 IBM的“思考”成为第一台能同人下棋的计算机
1988年 ”深蓝“击败丹麦特级大师拉尔森
1989年 “深蓝”在与世界棋王卡斯帕罗夫进行的对阵中以0比2败北
1996年 “深蓝”诞生,在与卡斯帕罗夫的挑战赛中以2比4失利
1997年 “更深的蓝”以3比2击败了卡斯帕罗夫
2001年 “更弗里茨”击败了卡斯帕罗夫、阿南德以及除了克拉姆尼克之外的所有排名世界前十位的棋手
2002年 “更弗里茨“与克拉姆尼克以4比4战平
这是像人一样的机器与像机器的人之间的战斗。
2012年6月底࿰

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值