(
课件网) 计算机解决问题的基本过程 选修一 算法与程序设计 计算思维 计算 算法思维 算法 1 2 3 算法的描述 体验编程 计算不再只和计算机有关,它决定我们的生存。 改变了什么? 计算 数学建模 计算改变科学研究 计算经济学 计算思想在诺贝尔经济学奖理论中占70%以上的比例 表 诺贝尔经济学奖理论与计算思想影响 年份 诺贝尔经济学获得者 诺贝尔经济学奖理论 计算思想的影响 1970 萨缪尔森 静态和动态经济理论以及经济科学分析 √ 1975 康托罗维奇 库普曼斯 资源最优分配理论模型 √ 1980 克莱因 经济波动和经济政策中的计量经济模型和应用 1981 托宾 金融市场分析及其支出决策、就业、生产和价格总体 √ 1994 豪尔绍尼 纳什 泽尔腾 均衡分析中的非合作博弈理论模型 √ 2013 汉森罗伯特 尤金 拉尔斯 资产价格的实证分析 √ 计算社会学 从你所遗留的数字印记里,将可以推断你的习惯,你的心智模式,你下一步可能干什么,你的好朋友会是谁 智慧城市———IBM智慧城市运行解决方案 通过预警分析系统,里士满市的犯罪率一年内就猛降了 在IBM的帮助下,迈阿密 - 德戴县公立学校在教学成绩方面都取得显著的提高和进步。 40% 它正在改变科研、工作、生活、学习等 它在改变世界! 计算 计算的本质 什么是计算呢? 例1:算数计算 1+2+3=6 例2:代数演算 a2+2ab+b2=(a+b)2 计算的本质 1+2+3 →(1+2)+3 → 3+3 结合律 加法规则,替换规则 加法规则 计算是基于规则的符号串变换 → 6 什么是计算思维呢? 周以真 微软全球副总裁 计算机解决问题的过程 游戏———猜价格 这是一款价值在2000元以内的运动手环,您能在11次内准确猜出它的价格吗? 计算机解决问题的基本过程 分析问题 设计算法 编写程序 调试程序 第一步 第二步 第三步 第四步 算法思维 已知某商品价格p是在区间[pmin,pmax]中的整数,参与者可以给出n次报价,对每次报价主持人会给出高了、低了或者正确的提示。如果没有任何背景知识,怎样才能在给定次数内猜出价格? 已知整数p∈[pmin,pmax] ,在给定次数m内,如何生成整数序列p1,p2p3, ···,pn,使得pn=p并且n≤m,其中m是允许猜测的次数。 [0,2000] P1=1000,高了,[0,1000]; P2=500,低了,[500,1000]; P3=750,低了,[750,1000]; P4=875,低了,[875,1000]; ······ 初始:输入pmin、Pmax、m的值; 步骤2:pn=(pmin+pmax)/2; 步骤3:如果n>m,则 输出失败,结束; 步骤4:如果pn等于p,则 输出成功,结束; 步骤5:如果pn>p,则 令pmax=pn,否则 令pmin=pn; 步骤6:n=n+1; 步骤7:转到步骤2; 步骤1:令n=1; 算法:求解某一问题所使用的一系列规则序列 算法思维 算法思维 Private Sub Form_Load() Const p As Integer=996 Dim pmin As Integer Dim pmax As Integer Dim m As Integer Dim pn As Integer Dim n As Integer pmin = InputBox("请输入最小价格") pmax = InputBox("请输入最大价格") m = InputBox("请输入可猜测次数") n = 1 Do Until n >m Or pn = p pn = (pmin + pmax) / 2 If pn > p Then pmax = pn Else pmin = pn End If n = n + 1 Loop Show If n >m Then Print "失败"; Else Print "成功,共猜测了" & n; "次, 价格为" & pn; "元"; End If End Sub Do until 条件判断→什么时候不循环了 需要执行多次的程序语句 Loop if 条件判断 then 满足条件执行的程序语句 Else 不满足条件执行的语句 End if →表示判断语句结束 算法的描述 自然语言描述 流程图描述 算法的描述 伪代码描述 Begin input pmin ,pmax ,m n=1 Do until n>m or pn=p pn=(pmin+pmax)/2 if pn>p then pmax=pn else if pn<p then pmin=pn n=n+1 Loop if n>m then Prin ... ...