《1.1算法与程序框图.pptx》由会员分享,可在线阅读,更多相关《1.1算法与程序框图.pptx(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、会计学11.1算法算法(sun f)与程序框图与程序框图第一页,共27页。计算机解决计算机解决(jiju)任何问题任何问题都要依赖于算法都要依赖于算法.只有将解决只有将解决(jiju)问题的过程分解为若干个问题的过程分解为若干个明确的步骤明确的步骤,即算法即算法,并用计算机能并用计算机能够接受的够接受的“语言语言”准确地描述出来准确地描述出来,计算机才能够解决计算机才能够解决(jiju)问题问题.第1页/共27页第二页,共27页。问题问题1请你写出解二元一次方程组的详细求解请你写出解二元一次方程组的详细求解过程过程.第一步第一步:-2得得:5y=3 第二步第二步:解解得得:第三步第三步:将将
2、代入代入,解得解得 .对于一般的二元一次方程组对于一般的二元一次方程组其中其中 也可以按照上述步骤求解也可以按照上述步骤求解.第2页/共27页第三页,共27页。例例1:任意给定任意给定(i dn)一个大于一个大于1的整数的整数n,试设试设计一个程序或步骤对计一个程序或步骤对n是否为质数做出判定是否为质数做出判定.算法算法(sun f)分分析析:第一步第一步:判断判断(pndun)n是否等于是否等于2.若若n=2,则则n是质数是质数;若若n2,则执行第二步则执行第二步.第二步第二步:依次检验依次检验2(n-1)这些整数是不是这些整数是不是n的因的因素素,即是不是整除即是不是整除n的数的数.若有这
3、样的数若有这样的数,则则n不是质数不是质数;若没有这样的数若没有这样的数,则则n是质数是质数.说明说明:用语言描述一个算法用语言描述一个算法,最便捷的方式就是按最便捷的方式就是按解决问题的步骤进行描述解决问题的步骤进行描述.每一步做一件事情每一步做一件事情.第3页/共27页第四页,共27页。若是若是,则则m为所求为所求;例例2:用二分法设计一个求方程用二分法设计一个求方程x2-2=0(x0)的近似的近似(jn s)根的算法根的算法.算法算法(sun f)分析分析:设所求近似根与精确设所求近似根与精确(jngqu)解的解的差的绝对值不超过差的绝对值不超过=0.005.第一步第一步:令令f(x)=
4、x2-2.因为因为f(1)0,所以设所以设a=1,b=2.第二步第二步:令令判断判断f(m)是否为是否为0.若否若否,则继续判断则继续判断f(a)(m)大于大于0还是小于还是小于0.第三步第三步:若若f(a)(m)0,则令则令a=m;否则否则,令令b=m.第四步第四步:判断判断|a-b|2,则执行第二步则执行第二步.第二步第二步:依次检验依次检验2(n-1)这些整数是不是这些整数是不是n的的因素因素,即是不是整除即是不是整除n的数的数.若有这样的数若有这样的数,则则n不不是质数是质数;若没有这样的数若没有这样的数,则则n是质数是质数.从上节课我们知道从上节课我们知道:算法算法(sun f)可以
5、用自可以用自然语言来描述然语言来描述.如例如例1 为了使算法的程序或步骤为了使算法的程序或步骤(bzhu)表达得更为表达得更为直观直观,我们更经常地用图形方式来表示它我们更经常地用图形方式来表示它.第7页/共27页第八页,共27页。开始输入ni=2求n除以i的余数ri的值增加 1仍用i表示in或r=0?n不是质数结束是是否否是是n是质数否否r=0?设n是一个(y)大于2的整数.一般(ybn)用i=i+1表示.i=i+1说明说明:i表示从表示从2(n-1)的所有正整数的所有正整数,用以判用以判断步骤断步骤2是否终止是否终止,i是一个计数变量是一个计数变量,有了有了这个变量这个变量,算法才能依算法
6、才能依次执行次执行.逐步考察从逐步考察从2(n-1)的所有正整数的所有正整数中是否有中是否有n的因数的因数(ynsh)存在存在.第8页/共27页第九页,共27页。思考思考?通过上述通过上述(shngsh)算法的两种不同表达算法的两种不同表达方式的比较方式的比较,你觉得用程序框图来表达算法有哪你觉得用程序框图来表达算法有哪些特点些特点?用程序框图表示用程序框图表示(biosh)的算法更加简练的算法更加简练,直观直观,流向清楚流向清楚.程序框图又称流程图程序框图又称流程图,是一种用规定的图是一种用规定的图形、指向线及文字说明来准确形、指向线及文字说明来准确(zhnqu)、直、直观地表示算法的图形观
7、地表示算法的图形.通常通常,程序框图由程序框和流程线组成程序框图由程序框和流程线组成.一个或几个程序框的组合表示算法中的一个步骤一个或几个程序框的组合表示算法中的一个步骤;流程线方向用箭头表示流程线方向用箭头表示,按照算法进行的顺序将程序按照算法进行的顺序将程序框连接起来框连接起来.第9页/共27页第十页,共27页。基本的程序基本的程序(chngx)框和它们各自表示的功框和它们各自表示的功能如下能如下:图形符号图形符号名称名称功能功能终端终端(zhn dun)框框(起止框起止框)表示一个表示一个(y)算法的算法的起始和结束起始和结束输入、输输入、输出框出框表示一个算法输入和输表示一个算法输入和
8、输出的信息出的信息处理框处理框(执执行框行框)判断某一条件是否成立判断某一条件是否成立,成立时成立时在出口处标明在出口处标明“是是”或或“Y”;不不”成立时标明成立时标明“否否”或或“N”.判断框判断框赋值、计算赋值、计算流程线流程线连接程序框连接程序框连接点连接点连接程序框图的两部分连接程序框图的两部分第10页/共27页第十一页,共27页。开始输入ni=2求n除以i的余数ri=i+1in或r=0?n不是质数结束是是否否是是n是质数否否r=0?顺序(shnx)结构用程序框图来表示算法,有三用程序框图来表示算法,有三种不同的基本种不同的基本(jbn)逻辑结逻辑结构:构:条件(tiojin)结构循
9、环结构第11页/共27页第十二页,共27页。(1)顺序结构顺序结构-是由若干个依次执行是由若干个依次执行(zhxng)的的处理步骤组成的处理步骤组成的.这是任何一个算法都离不开的这是任何一个算法都离不开的基本结构基本结构.例例1:已知一个三角形的三边边长分别为已知一个三角形的三边边长分别为a,b,c,利用利用海伦海伦-秦九韶公式秦九韶公式(gngsh)设计一个算法设计一个算法,求出它求出它的面积的面积,画出算法的程序框图画出算法的程序框图.算法算法(sun f)分析分析:第一步第一步:计算计算p的值的值.第二步第二步:由海伦由海伦-秦九韶公式求出三角形的面积秦九韶公式求出三角形的面积S.第三步
10、第三步:输出输出S的值的值.第12页/共27页第十三页,共27页。已知三角形三边长分别为已知三角形三边长分别为a,b,c,则三角则三角形的面积为形的面积为其中其中 这个公式被称为海伦这个公式被称为海伦秦九韶公式秦九韶公式.第13页/共27页第十四页,共27页。开始(kish)输出(shch)S结束(jish)输入a,b,c第14页/共27页第十五页,共27页。(2)条件结构条件结构(jigu)-在一个算法中在一个算法中,经常经常会遇到一些条件的判断会遇到一些条件的判断,算法的流向根据条算法的流向根据条件是否成立有不同的流向件是否成立有不同的流向.条件结构条件结构(jigu)就是处理这种过程的结
11、构就是处理这种过程的结构(jigu).例例2:任意给定任意给定3个正实数个正实数,设计一个设计一个(y)算法算法,判断分别以这判断分别以这3个数为三边边长的三角形是否存个数为三边边长的三角形是否存在在.画出这个算法的程序框图画出这个算法的程序框图.算法算法(sun f)分析分析:第一步第一步:输入输入3个正实数个正实数a,b,c;第二步第二步:判断判断a+bc,a+cb,b+ca是否同时成立是否同时成立,若若是是,则能组成三角形则能组成三角形;若否若否,则组不成三角形则组不成三角形.第15页/共27页第十六页,共27页。程序框图程序框图:开始(kish)输入(shr)a,b,ca+bc,a+c
12、b,b+ca是否(sh fu)同时成立?是是存在这样的三角形不存在这样的三角形否否结束第16页/共27页第十七页,共27页。(3)循环循环(xnhun)结构结构-在一些算法中在一些算法中,也也经常会出现从某处开始经常会出现从某处开始,按照一定条件按照一定条件,反复反复执行某一步骤的情况执行某一步骤的情况,这就是循环这就是循环(xnhun)结构结构.反复反复(fnf)执行的步骤称为循环体执行的步骤称为循环体.注意注意:循环结构不能是永无终止的循环结构不能是永无终止的“死死循环循环”,一定一定(ydng)要在某个条件下要在某个条件下终止循环终止循环,这就需要条件结构来作出判这就需要条件结构来作出判
13、断断,因此因此,循环结构中一定循环结构中一定(ydng)包含包含条件结构条件结构.第17页/共27页第十八页,共27页。例例3:设计一个计算设计一个计算(j sun)1+2+3+100的值的算法的值的算法,并画出程序框图并画出程序框图.算法算法(sun f)分分析析:第第1步步:0+1=1;第第2步步:1+2=3;第第3步步:3+3=6;第第4步步:6+4=10第第100步步:4950+100=5050.第第(i-1)步的结果步的结果(ji gu)+i=第第i步的结果步的结果(ji gu)各步骤有共同的结构各步骤有共同的结构:为了方便有效地表示上述过程为了方便有效地表示上述过程,我们我们引进一
14、个引进一个累加变量累加变量S来表示每一步来表示每一步的计算结果的计算结果,从而把第从而把第i步表示为步表示为 S=S+iS的初始值为的初始值为0,i依次取依次取1,2,100,由于由于i同时记录了循环的次数同时记录了循环的次数,所所以以i称为计数变量称为计数变量.第18页/共27页第十九页,共27页。第19页/共27页第二十页,共27页。程序框图程序框图:开始(kish)i=1S=0S=S+ii=i+1i100?是是输出(shch)S结束(jish)否否直到型循环结构开始i=1S=0i100?是是S=S+ii=i+1否否输出S结束当型循环结构第20页/共27页第二十一页,共27页。说明说明:(
15、1)一般地一般地,循环结构中都有一个计数变量和循环结构中都有一个计数变量和累加变量累加变量.计数变量用于记录循环次数计数变量用于记录循环次数,同时它的同时它的取值还用于判断循环是否终止取值还用于判断循环是否终止,累加变量用于输出累加变量用于输出结果结果.累加变量和计数变量一般是同步累加变量和计数变量一般是同步(tngb)执执行的行的,累加一次累加一次,记数一次记数一次.(2)循环结构分为循环结构分为(fn wi)两种两种-当型和直到型当型和直到型.当型循环在每次执行循环体前对循环条当型循环在每次执行循环体前对循环条件件(tiojin)进行判断进行判断,当条件当条件(tiojin)满足时满足时执
16、行循环体执行循环体,不满足则停止不满足则停止;(当条件当条件(tiojin)满满足时反复执行循环体足时反复执行循环体)直到型循环直到型循环在执行了一次循环体之后在执行了一次循环体之后,对控对控制循环条件进行判断制循环条件进行判断,当条件不满足时执行循环体当条件不满足时执行循环体,满足则停止满足则停止.(反复执行循环体反复执行循环体,直到条件满足直到条件满足)第21页/共27页第二十二页,共27页。程序框图程序框图:开始(kish)i=1S=0S=S+ii=i+1i100?是是输出(shch)S结束(jish)否否直到型循环结构开始i=1S=0i100?是是S=S+ii=i+1否否输出S结束当型
17、循环结构第22页/共27页第二十三页,共27页。开始输入ni=2求n除以i的余数ri=i+1in或r=0?n不是质数结束是是否否是是n是质数否否r=0?顺序(shnx)结构用程序框图来表示算法,有用程序框图来表示算法,有三种不同的基本逻辑三种不同的基本逻辑(lu j)结构:结构:条件(tiojin)结构循环结构直到型循环结构第23页/共27页第二十四页,共27页。若是若是,则则m为所求为所求;探究探究:画出用二分法求方程画出用二分法求方程(fngchng)x2-2=0的的近似根近似根(精确度为精确度为0.005)的程序框图的程序框图.算法算法(sun f)分分析析:第一步第一步:令令f(x)=
18、x2-2.因为因为(yn wi)f(1)0,所以设所以设a=1,b=2.第二步第二步:令令判断判断f(m)是否为是否为0.若否若否,则继续判断则继续判断f(a)(m)大于大于0还是小于还是小于0.第三步第三步:若若f(a)(m)0,则令则令a=m;否则否则,令令b=m.第四步第四步:判断判断|a-b|0?程序框图程序框图开始(kish)f(x)=x2-2输入(shr)误差和初值a,ba=m否否b=m|a-b|或f(m)=0?输出(shch)m结束第25页/共27页第二十六页,共27页。课堂课堂(ktng)小结小结n n本节主要讲述了程序框图的基本节主要讲述了程序框图的基本知识本知识:包括常用的
19、图形符号、包括常用的图形符号、算法的基本逻辑结构算法的基本逻辑结构.n n算法的基本逻辑结构有三种,算法的基本逻辑结构有三种,即顺序结构、条件结构和循环即顺序结构、条件结构和循环结构结构.n n 其中顺序结构是最简单其中顺序结构是最简单的结构,也是最基本的结构,的结构,也是最基本的结构,循环结构必然包含条件结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相所以这三种基本逻辑结构是相互支撑的,它们共同构成互支撑的,它们共同构成(guchng)(guchng)了算法的基本结构,了算法的基本结构,无论怎样复杂的逻辑结构,都无论怎样复杂的逻辑结构,都可以通过这三种结构来表达可以通过这三种结构来表达第26页/共27页第二十七页,共27页。