1第一章如何用计算机解决问题课件

上传人:博****1 文档编号:567696706 上传时间:2024-07-22 格式:PPT 页数:45 大小:871.52KB
返回 下载 相关 举报
1第一章如何用计算机解决问题课件_第1页
第1页 / 共45页
1第一章如何用计算机解决问题课件_第2页
第2页 / 共45页
1第一章如何用计算机解决问题课件_第3页
第3页 / 共45页
1第一章如何用计算机解决问题课件_第4页
第4页 / 共45页
1第一章如何用计算机解决问题课件_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《1第一章如何用计算机解决问题课件》由会员分享,可在线阅读,更多相关《1第一章如何用计算机解决问题课件(45页珍藏版)》请在金锄头文库上搜索。

1、揭开计算机解决问题的神秘面纱揭开计算机解决问题的神秘面纱 第一节第一节 计算机解决问题的过程计算机解决问题的过程什么是程序?计算机的任何动作都是在执行人给它的指令指令。人们针对某一需要而为计人们针对某一需要而为计算机编制的算机编制的指令序列指令序列称为程序称为程序 。指示计算机如何去解决问题或完成任务的一组可执行的指令可执行的指令。用于书写计算机程序的语言称为程序设计语言。程序设计语言。如vb、c、c+、pascal等。机器语言机器语言是一串由“0”和“1”构成的二进制代码。汇编语言汇编语言实际是一种符号化的机器语言,它采用英文助记符代替机器指令,比机器语言容易识别和记忆,从而提高了程序的可读

2、性。 什么是程序设计语言什么是程序设计语言什么是软件?程序、数据连同有关的资料文档称为软件。高级语言高级语言是更接近于自然语言(英语)和数学语言的编程语言,它并不特指某一种语言,也不依赖于特定的计算机系统,因而更容易掌握和使用,通用性也更好。比较流行的高级语言有BASIC、C/C+、FORTRAN、PASCAL、COBOL、JAVA等。系统软件系统软件是在计算机应用中,为了实现系统功能、充分利用资源、提高使用效率、便于使用而设计的与计算机系统资源有关的软件。 操作系统是重要的系统软件。应用软件应用软件是为用户应用目的而开发的软件。程序设计语言从机器语言到高级语言的抽象,带来的主要好处是:1.高

3、级语言接近算法语言,易学、易掌握易学、易掌握,一般工程技术人员只要较短时间的培训就可以胜任程序员的工作 。2.高级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序可读性好,可维护性强,可靠性高可读性好,可维护性强,可靠性高 。3.高级语言远离机器语言,与具体的计算机硬件关系不大,因而所写出来的程序可移植性好可移植性好,重用率高 。4.由于把繁杂琐碎的事务交给了编译程序去做,所以自动自动化程度高,开发周期短化程度高,开发周期短,且程序员得到解脱,可以集中时间和精力去从事对于他们来说更为重要的创造性劳动,以提高程序的质量。一、一、单项选择题单项选择题1.利用计算机解决问题的过程中,

4、利用计算机解决问题的过程中,“找出已知和未知,明确找出已知和未知,明确它们之间的关系,列出数学表达式它们之间的关系,列出数学表达式”属于以下哪一个步骤属于以下哪一个步骤()。)。A.设计算法设计算法B.分析问题分析问题C.编写程序编写程序D.调试运行程序调试运行程序B阅读教材27页,思考下列问题2.要进行元旦晚会比赛,学校请你设计一个能够对要进行元旦晚会比赛,学校请你设计一个能够对元旦晚会节目分数自动排序的软件,你接到任务元旦晚会节目分数自动排序的软件,你接到任务后,准备开始设计此软件,比较好的方法和步骤后,准备开始设计此软件,比较好的方法和步骤是?(是?()。)。A.设计算法,编写程序,提出

5、问题,调试程序设计算法,编写程序,提出问题,调试程序B.分析问题,编写程序,设计算法,调试程序分析问题,编写程序,设计算法,调试程序C.分析问题,设计算法,编写程序,调试程序分析问题,设计算法,编写程序,调试程序D.设计算法,提出问题,编写程序,调试程序设计算法,提出问题,编写程序,调试程序C3.程序编好以后,计算机无法检查出来的错误是?(程序编好以后,计算机无法检查出来的错误是?()。)。A.编译错误编译错误B.执行错误执行错误C.逻辑错误逻辑错误D.语法错误语法错误C一、人解决问题的一般过程一、人解决问题的一般过程1、观察、分析问题、观察、分析问题2、寻找解题的方法、寻找解题的方法4、验证

6、结果、验证结果3、人工计算、人工计算用公式法求解,确定各项系数。用公式法求解,确定各项系数。解一元二次方程解一元二次方程x2+3x+2=0按照一定的方法和步骤计算按照一定的方法和步骤计算检验结果的准确性检验结果的准确性二、用计算机解决问题的一般过程二、用计算机解决问题的一般过程n第一步:需求分析。(确定计算机要“做什么”)求一元二次方程x2+3x+2=0的两个实数根。n第二步:设计算法算法。(确定计算机要“如何做”)方程的系数是常量,分别用a,b,c表示,可运用数学上现成的求根公式求方程的根。先求出d=b2-4ac;(求根公式中需用开方运算的那部分)再用求根公式算出x1,x2的值。(x1,x2

7、=?)输出x1,x2.n第三步:编写程序编写程序。(翻译将算法编写成计算机程序将算法编写成计算机程序)Pascal程序:programEx16;Consta=1;常量说明b=3;c=2;a,b,c表示方程系数Vard:integer;d为整型变量X1,X2:Real;X1,X2为实型变量Begind:=b*b-4*a*c;x1:=(-b+sqrt(d)/(2*a);求方程的根x2:=(-b-sqrt(d)/(2*a);Writeln(X1=,X1,:6,X2=,X2);输出结果Readln等待输入一个回车键End.本程序中的a,b,c均为常量;变量d是整数类型,而变量x1,x2则是实数类型,因

8、为运算式中的Sqrt(d)开平方运算和(/)除法运算使结果为实数。Sqrt()是开平方函数,是Pascal系统的一个标准函数。n第四步:调试与维护。(运行程序,验证结果)总结:计算机解决问题流程图总结:计算机解决问题流程图第二节 算法描述与设计实例:实例:“打电话打电话” 的过程。的过程。拿拿起起听听筒筒拨拨号号打不通打不通通了通了把听筒把听筒放下放下通话通话结束结束把听筒放下把听筒放下等会儿等会儿再拨再拨无人接听无人接听把听筒把听筒放下放下等会儿等会儿再拨再拨什么是算法什么是算法?算法是算法是解决问题的方法和步骤解决问题的方法和步骤。通俗点说,就是计算机解题的过程就是计算机解题的过程。在这个

9、过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。前者是推理实现的算法,后者是操作实现的算法。 著名的计算机科学家尼克劳斯沃思指出:算法是程序设计的“灵魂”。算法算法+ +数据结构数据结构= =程序程序 算法独立于任何具体的程序设计语言,一个算法可以用多种程序设计语言来实现。算法的特征算法的特征: 算法要有一个清晰的起始步清晰的起始步,表示处理问题的起点,且每一个步骤只能有一个确定的只能有一个确定的后继步骤(1算法的算法的确定性确定性),从而组成一个步骤的有限有限序列(2算法的有算法的有穷性穷性);要有一个终止步一个终止步(序列的终止)表示问题得到解决或不能得到解决;每条规则必须是确

10、定的、可行的(3算法的可行性算法的可行性)、不能存在二义性。算法总是对数据进行加工处理,因此,算法的执行过程中通常要有数据4输入输入( 0个或多个个或多个)和数据5输出输出(至少(至少一个)一个)的步骤。 描述算法的方法描述算法的方法 1、自然语言:即用人们日常使用的语言和数学语言描述的算法。2、流程图:即用一组标准的图形符号来描述算法。 3 、伪代码:伪代码是一种非正式代码,常用自然语言、数学语言和符号来描述算法的操作步骤。 1、用自然语言描述算法n用自然语言描述算法,就是把算法的各个步骤,依次用人们所熟悉的日常会话的语言表示出来。n例:求出两个数的和。 计算机处理的具体步骤为:输入两个加数

11、num1、num2;将两数相加并将求出的和赋给某一个变量sum;显示运算结果sum。2、用流程图描述算法n用流程图描述算法,就是用含义确切的图形符号描述算法。n例:求出两个数的和。实例分析实例分析 韩信点兵韩信点兵算法算法:从1开始,取出一个自然数判断它被3、5、7整除后的余数是否为2、3、2,如果是,则这个数即是所求的数,求解结束。否则,用下一个数再试,直到找到这个数为止。(假设人数N100) 相传我国汉代有位大将军叫韩信,他在点兵时让士兵分别从13、15、17报数,然后报告各次的余数,这样,就知道总共有多少士兵。然后韩信就凭这些数,然后韩信就凭这些数,可以求得这队士兵的总人数。可以求得这队

12、士兵的总人数。自然语言描述自然语言描述1、将N的初始值赋为12、如果N100并且N被3、5、7整除后余数为2、 3、2,则输出N的值,转入第4步3、将N的值加1,转到第2步4、结束程序流程图描述流程图描述开始N被3、5、7整除余数为2、3、2N=N+1结束NYN=1输出N值(N100)YN用伪代码描述算法用伪代码描述算法For I=1 to N if n能被3、5、7整除余数为2、3、2 then 输出n exit for end ifNext I(1)表示条件判断:)表示条件判断:If条件条件 Then 执行语句一执行语句一Else 执行语句二执行语句二End If(2)表示循环处理:)表示

13、循环处理:Do While 条件条件 循环处理语句循环处理语句Loop完整的源程序完整的源程序Private Sub Command1_Click() 算法:使用穷举法确立一个范围1,100然后从自然数1开始尝试,找到满足条件的数即输出 Dim i As Integer For i = 1 To 100 If i Mod 3 = 2 And i Mod 5 = 3 And i Mod 7 = 2 Then MsgBox 答案是: & i End If NextEnd Sub例例例例: :判断一个四位数的年份是否为闰年。判断一个四位数的年份是否为闰年。判断一个四位数的年份是否为闰年。判断一个四位

14、数的年份是否为闰年。算法分析:算法分析:算法分析:算法分析:我们知道,如果我们知道,如果我们知道,如果我们知道,如果2 2月是月是月是月是2828天,则这一年是平年;如果是天,则这一年是平年;如果是天,则这一年是平年;如果是天,则这一年是平年;如果是2929天,则这一年是天,则这一年是天,则这一年是天,则这一年是闰年。判断闰年的条件是:如果该年份能被闰年。判断闰年的条件是:如果该年份能被闰年。判断闰年的条件是:如果该年份能被闰年。判断闰年的条件是:如果该年份能被4 4整除但不能被整除但不能被整除但不能被整除但不能被100100整除,或者整除,或者整除,或者整除,或者能被能被能被能被400400

15、整除,则该年为闰年。整除,则该年为闰年。整除,则该年为闰年。整除,则该年为闰年。算法描述(伪代码):算法描述(伪代码):算法描述(伪代码):算法描述(伪代码):输入年份输入年份输入年份输入年份y yIF yIF y能被能被能被能被4 4整除整除整除整除 THENTHENIF y IF y 不能被不能被不能被不能被100100整除整除整除整除 THENTHEN输出输出输出输出“ “是闰年是闰年是闰年是闰年” ”ELSEELSEIF y IF y 能被能被能被能被400400整除整除整除整除 THENTHEN输出输出输出输出“ “是闰年是闰年是闰年是闰年” ”ELSEELSE输出输出输出输出“ “

16、不是闰年不是闰年不是闰年不是闰年” ”END IFEND IFEND IFEND IFELSEELSE输出输出输出输出“ “不是闰年不是闰年不是闰年不是闰年” ”END IFEND IF课堂练习:课堂练习:分别用自然语言和流程图描述求解1、所有水仙花数的问题。水仙花数是指一个三位数,它的各位数的立方和正好等于该数本身。如153=13+53+33。水仙花数自然语言描述水仙花数自然语言描述1、将N的初始值赋为1002、如果N的个位数的三次方加上N的十位数的三次方再加上N的百位数的三次方等于N,输出N值,否则转入第3步3、如果N=999,将N的值加1,转到第2步,否则转入第4步4、输出运算结果,结束

17、程序水仙花数流程图描述水仙花数流程图描述开始N=N+1结束NYN的个位数的三次方的个位数的三次方+N的十位数的三次方的十位数的三次方+N的百的百位数的三次方位数的三次方=N ?N=100输出N值N=999YN用伪代码描述水仙花数算法用伪代码描述水仙花数算法For N=100 to 999if N的个位数的三次方+N的十位数的三次方+N的百位数的三次方=N then 输出nend ifnext1Private Sub Command1_Click()Dim i As IntegerFor i = 100 To 999 If Int(i / 100) 3 + (Int(i / 10) Mod 10

18、) 3 + (i Mod 10) 3 = i Then Print (i) End IfNextEnd Sub水仙花数源程序水仙花数源程序1.3初始身手,体验编程nVB界面的初步了解1.1.主窗口主窗口 应用程序窗口,由标题栏、菜单栏和工具栏组成2.2.窗体窗体(Form)(Form)窗口(编辑器)窗口(编辑器) 设计VB程序的 界面3.3.代码代码(Code)(Code)窗口窗口 编辑窗体、标准模块中的代码4.4.属性属性(Properties)(Properties)窗口窗口 所有窗体或控件的属性设置5.5.工程资源管理器工程资源管理器(Project (Project ExprorExp

19、ror) )窗口窗口 保存一个应用程序所有的文件6. 6. 工具箱工具箱(toolbox)(toolbox)窗口窗口 显示各种控件的制作工具,供用户在窗体上设计1.3.1小时钟程序编写尝试nPrivate Sub Form_Activate()n Me.BackColor = RGB(0, 78, 152)n Me.Move Screen.Width - Me.Width, 0nEnd SubnPrivate Sub lblShow_Click()n tmrClock.Enabled = Not tmrClock.EnablednEnd SubnPrivate Sub lblShow_Dblc

20、lick()n EndnEnd SubnPrivate Sub tmrClick_Timer()n lblShow.Caption = Time()nEnd SubnVB中不区分大小写,但在编程的时候要养成好的习惯,变量大写或首字母大写.方便以后查错 1.3.2 认识程序设计语言认识程序设计语言算法、程序设计与程序设计语言之间的关系算法、程序设计与程序设计语言之间的关系 算法算法提出问题:什么是算法?算法有哪些特征?提出问题:什么是算法?算法有哪些特征?程序设计程序设计寻求解决问题的方法,并将其实现寻求解决问题的方法,并将其实现 步骤写成计算机可执行的程序的过程。步骤写成计算机可执行的程序的过

21、程。程序设计语言程序设计语言泛指一切用于书写计算机程序的泛指一切用于书写计算机程序的语言。语言。算法是程序设计的前提,它包含方法和步骤;算法是程序设计的前提,它包含方法和步骤;程序是实现算法中的思想的过程;程序是实现算法中的思想的过程;程序设计语言把算法转化为计算机认识的语言。程序设计语言把算法转化为计算机认识的语言。认识程序设计语言认识程序设计语言 1、发展过程机器语言:由一串“0”和“1”构成二进制代码。汇编语言:是一种符号化(英文助记符)的机器语言。高级语言:如Basic、C/C+、Fortran、Pascal、Cobol、Java等。低级语言:机器语言、汇编语言。 高级语言:BASIC

22、语言、FORTRAN语言、C语言。 分类2、分类(按转换方式不同分类) 编译型语言编译型语言 解释型语言解释型语言 编写的源程序需要用编译程序编写的源程序需要用编译程序先翻译成机器语言的目标程序,先翻译成机器语言的目标程序,然后再由连接装配程序进行连然后再由连接装配程序进行连接装配,生成可执行程序,这接装配,生成可执行程序,这样才能被计算机执行。样才能被计算机执行。 源程序输入计算机后,运行源源程序输入计算机后,运行源程序,相应的解释程序会逐条程序,相应的解释程序会逐条分析源程序中的语句,每解释分析源程序中的语句,每解释一句由计算机执行一句。一句由计算机执行一句。 C/C+ 、 VB 、 Pa

23、scal 、 Cobol Qbasic 、 Lisp 3、 编辑程序、编译程序和连接程序编辑程序、编译程序和连接程序 编辑程序编辑程序包含内容:一是将源程序逐个字符输入到计算机内包含内容:一是将源程序逐个字符输入到计算机内存,二是修改源程序,三将修改好的源程序保存在磁盘存,二是修改源程序,三将修改好的源程序保存在磁盘文件中。文件中。编译程序:编译程序: 将已编辑好的源程序(已存储在磁盘文件中)翻译将已编辑好的源程序(已存储在磁盘文件中)翻译成二进制的目标代码。二进制代码在成二进制的目标代码。二进制代码在UNIX下后缀为下后缀为“.o”的文件,在的文件,在DOS下是后缀为下是后缀为“.obj”文件。文件。连接:连接:将各模块的二进制目标代码与系统标准模块经连接处理将各模块的二进制目标代码与系统标准模块经连接处理后,得到具有有绝对地址的可执行文件,它是计算机直后,得到具有有绝对地址的可执行文件,它是计算机直接执行的文件。接执行的文件。在在UNIX下它以下它以“.out”为后缀,在为后缀,在MS-DOS以下以下“.exe”为后缀。为后缀。 执行过程:执行过程:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号