ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:251.34KB ,
资源ID:5249804      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5249804.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(算法初步.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

算法初步.docx

1、算法初步第一章 算法初步测试一 算法与程序框图概念 学习目标1了解算法思想及算法的意义2了解框图的概念,明确框图符号的意义 基础性训练一、选择题1下列程序框通常用来表示赋值、计算功能的是( ) (A) (B) (C) (D)2算法的有穷性指的是( )(A)算法是明确和有效的 (B)算法能够在有限步内完成(C)算法的每个操作步骤是可执行的 (D)用数字进行四则运算的有限过程3对算法理解正确的是( )(A)一种解题方法 (B)基本运算及规定的运算顺序构成的完整的解题步骤(C)计算的方法 (D)一种语言程序4算法中,每一步的结果有( )(A)一个或两个 (B)任意多个 (C)确定的一个 (D)两个*

2、5有一堆形状大小相同的珠子,其中只有一粒重量比其他的珠子重,其余所有珠子重量相同一个同学利用科学的算法,仅两次利用天平就找出了这颗最重的珠子,则这堆珠子最多有( )(A)6粒 (B)7粒 (C)8粒 (D)9粒二、填空题6完成不等式2x33x2的算法过程:(1)将含x的项移项至不等式的左边,将常数项移至不等式的右边,得_;(2)在不等式两边同时除以x的系数,得_7阅读流程图(图1),试写出流程图所给出的算法含义:_图18写出图2中顺序框图的运算结果_图29写出图3中顺序框图的运算结果_图310“判断整数n(n2)是否为质数”的算法可以按如下步骤进行:S1 给定大于2的整数nS2 令i2S3 用

3、i除n,得到余数rS4 判断余数r是否为0若为0,则不是质数,结束算法;否则将i的值增加1仍用i表示S5 判断i是否大于n1若是,则是质数,结束算法;否则返回第三步现设给定的整数为35,则算法结束时i的值是_三、解答题11写出判断直线axbyc0与圆x2y21的位置关系的算法12写出求解二元一次方程组的算法步骤13在某商场购物时,商场会按顾客购物款的数额的大小分别给予不同的优惠折扣计算顾客应付货款的算法步骤如下:S1 输入购物款x(购物款以元为单位)S2 若x250,则折扣率d0;若 250x500,则折扣率d0.05;若 500x1000,则折扣率d0.10;若 x1000,则折扣率d0.1

4、5;S3 计算应付货款Tx(1d);S4 输出应付货款T现已知某顾客的应付货款是882元,求该顾客的购物款是多少元14输入直角三角形两直角边长度,输出第三条边长度,画出此题的顺序框图测试二 程序框图(一) 学习目标理解三种逻辑结构,会读逻辑框图,尝试写出程序框图 基础性训练一、选择题1程序框图中“处理框”的功能是( )(A)赋值 (B)计算(C)赋值或计算 (D)判断某一条件是否成立2尽管算法千差万别,但程序框图按其逻辑结构分类只有( )(A)2类 (B)3类 (C)4类 (D)5类3程序框图如图1所示,输出的结果为( )图1(A)2,5 (B)4,7 (C)2,4 (D)1,24程序框图如图

5、2所示,输出的结果为( )图2(A)2 (B)9 (C)3 (D)15程序框图如图3所示,当a1,b3时输出的结果为( )(A)0,1 (B)2,4 (C), (D)2,4图3二、填空题6用流程图表示求解不等式axb(a0)的算法时,判断框内的内容可以是_7在表示求解一元二次方程的算法中,需要使用选择结构,因为_8如图4,当a1时,框图的输出结果是_图49如图5,框图的输出结果是_图510如图6所示框图,设火车托运重量为p(kg)的行李时,每千克的费用标准为则图中处分别填的内容为:_;_图6三、解答题11已知函数f(x)x3,程序框图(图7)表示的是给出x值,求相应函数值的算法请将该框图补充完

6、整写出两处应填的内容图712观察所给算法的流程框图(图8),说明它表示的函数如果输入数字1,则输出的数字是什么?图8 拓展性训练13设计一个求任意实数的绝对值的算法,并画出流程图14已知三个实数a,b,c,试给出寻找这三个数中最大数的一个算法,并画出该算法的流程图测试三 程序框图(二) 学习目标理解三种逻辑结构,会读逻辑框图,尝试写出程序框图 基础性训练一、选择题1下列关于框图的逻辑结构说法正确的是( )(A)用顺序结构画出“求点到直线的距离”的程序框图是唯一的(B)条件结构中不含顺序结构(C)条件结构中一定含有循环结构(D)循环结构中一定包含条件结构2已知函数在由给定的自变量x计算函数值f(

7、x)的算法中,应该至少包含以下基本逻辑结构中的( )(A)顺序结构、循环结构 (B)条件结构、循环结构(C)顺序结构、条件结构 (D)顺序结构、循环结构3下列四个说法中正确的有( )任意一个算法都离不开顺序结构算法程序框图中,根据条件是否成立有不同的流向循环体是指按照一定条件,反复执行某一处理步骤循环结构中一定有条件结构,条件结构中一定有循环结构(A)1个 (B)2个 (C)3个 (D)4个4要解决下面四个问题,只用顺序结构画不出其流程图的是( )(A)计算1210的值 (B)当圆的面积已知时,求圆的周长(C)给定一个数x,求其绝对值 (D)求函数f(x)x33x的值5算法:S1 ma;S2

8、若bm,则mb;S3 若cm,则mc;S4 若dm,则md;S5 输出m则输出的m为( )(A)a,b,c,d中的最小值 (B)a,b,c,d中的最大值(C)d (D)a二、填空题6程序框图中的“处理框”的功能是_7有如图1所示的程序框图,该程序框图表示的算法功能是_图18如图2所示是求小于等于1000所有正偶数的和的程序框图,则空白处应为_;应为_图29如图3所示表示的是计算前10个奇数倒数之和的算法的程序框图,其中判断框内应填入的条件是_图3三、解答题10给出如图4所示的程序框图在执行上述框图表达的算法后,输出的S,i的值分别是多少?图411写出表示解方程axb0(a,b为常数)的一个程序

9、框图 拓展性训练12设计求S1352007和T1352007的一个算法,并画出相应的流程图13某工厂2004年的生产总值为200万元,技术革新后,预计以后每年的生产总值比上一年增加5,问最早需要到哪一年年生产总值超过300万元,写出算法并画出相应的程序框图测试四 算法语言 学习目标了解算法语言,尝试用算法语言实现一些算法 基础性训练1编写一个输入底面边长和侧棱长,求正四棱锥体积的程序2已知函数f(x)2x3,编写一段程序,用来求ff(x)的值(其中,x值由用户输入)3给出三个正数a,b,c,问能否构成一个三角形,若能则求其面积请设计一个程序解决该问题(注:已知三角形三边分别为a,b,c,则其面

10、积,其中p)4已知等式“3652838256”中,方框内是同一个数字,请设计程序,用尝试的方法求出满足等式的一个数字5请编写一个程序,计算1!2!3!4!100!(注:其中4!1234,5!12345,100!123100) 拓展性训练6已知数列an满足:a11,a23,对于任意的n3,有an3an12an2求该数列的前n项和7写出一个用二分法求方程x3x22x20在某个区间上的近似解的程序要求:初始区间和计算精度都能在运行中指定8求二次函数在给定区间上的最值测试五 逻辑框图综合测试一、选择题1找出乘积为528的两个相邻偶数,流程图如图1,其中填充处语句正确的选择是( )图1(A)Si*(i2

11、),输出i,i2(B)Si*i2,输出i,i2(C)Si*(i2),输出i,i2(D)Si*(i2),输出i2,i2如图2所示的算法流程图中,第三个输出的数是( )图2(A)1 (B) (C)2 (D) 3阅读流程图3,若输入的a,b,c分别为21,32,75,则输出的a,b,c分别是( )图3(A)75,21,32 (B)21,32,75 (C)32,21,75 (D)75,32,214如图4,程序框图所进行的求和运算是( )图4(A) (B) (C) (D) 5如果如图5程序框图的输出结果为18,那么在判断框中表示的“条件”应该是( )图5(A)i9(B)i9(C)i8(D)i116函数求

12、值的程序框图如图6所示,则空白处需要填的语句为:_;_;_图67如图7是一个算法的程序框图,当输入的值为5时,则其输出的结果是_图78阅读流程图8填空:最后一次输出的i_;一共输出i的个数为_个图89分别写出图9和图10的运行结果:图9_;图10_ 图9 图10参考答案第一章 算法初步测试一1C 2B 3B 4C 5D6x1,x1 7已知一个数的13,求这个数 8 910 10511S1 求出原点到直线axbyc0的距离S2 比较d与圆的半径r1的大小,若dr,则直线与圆相离;若dr,则直线与圆相切;若dr,则直线与圆相交12S1 判断a是否为0,若是,则执行S4,若不是,则执行S2S2 解出

13、S3 将代入xy2,解出S4 输出方程组的解若a0,则输出“方程组无解”;否则,输出方程组的解13解:设该顾客的购物款为x元根据题意,x882如果x1000,则0.9x882,解得x980;如果x1000,则0.85x882,解得x1037.65;所以,该顾客的购物款是980元或1037.65元14测试二1C 2B 3A 4B 5C6a0,或a07当方程根的判别式0时,方程有实根;当方程根的判别式0时,方程没有实根8“是负数” 912,21 100.3*p 0.3*300.5*(p30)11x3,yx3或x3,yx312流程框图表示的是下面的函数:输出的数字是313S1 输入xS2 如果x0,

14、则yx;否则yxS3 输出y14S1 输入a,b,cS2 xaS3 如果bx,则xb;否则,执行S4S4 如果cx,则xc;否则,执行S5S5 输出x测试三1D 2C 3C 4C 5A6赋值或计算7从小到大连续n个正整数乘积大于1000时,计算出最小的自然数n或其他等价的回答8SSi,ii29n10?103205,511112S1 赋值S1,T1S2 赋值i3S3 赋值SSi,赋值TTiS4 赋值ii2S5 若i2007,则执行S3S6 输出S,T13S1 赋值n0,a200,r0.05S2 年增量TarS3 年产量aaTS4 若a300,那么nn2,重复执行S2S5 N2004nS6 输出N

15、.测试四 算法语言1ainput(底面边长a);1input(侧棱长l);/注:这里应该对输入数据的合理性作出判别hsqrt(12(sqrt(2)/2*a)2); /计算棱锥的高Va2*h/3; /计算棱锥的体积disp(V,正四棱锥的体积为);2法一xinput(x);y2*x3; /计算yf(x)y2*y3; /计算yf(f(x)disp(y);法二/定义函数f(x)2*x3function yf(x)y2*x3;endfunction/下面可直接调用f(x)xinput(x);yf(f(x); /与代数中的表达方式一样disp(y);3disp(请输入三角形的三条边长:);ainput(

16、a);binput(b);cinput(c);if(abc)&(acb)&(bca)thenp(abc)/2;Ssqrt(p*(pa)*(pb)*(pc);disp(S,三角形面积为);elsedisp(不能构成三角形!);end;4for i19if(10*i3)*6528(30i)*8256)thendisp(i,这个数字是:);break;end;end;5法一用for语句实现S0;an1;for i1100anan*i;SSan;end;disp(S,1!2!3!100!);法二用while语句实现S0;an1;i1while i100anan*i;SSan;ii1;end;disp(

17、S,1!2!3!100!);6a_n_21;a_n_13;ninput(要求前多少项的和呢?请输入n);S0;/如果只要求前1项或2项的和,则不需要用到递推关系if(n1)thenSa_n_2;elseif(n2)thenSa_n_2a_n_1;end;/如果n大于2,则要用递推关系i3;while(in)a_n3*a_n_12*a_n_2;/先由递推关系求出下一项SSa_n; /然后累加到和S中a_n_2a_n_1; /原来的第(n1)项在下一轮循环中将变成第(n2)项a_n_1a_n; /原来的第n项在下一轮循环中将变成第(n1)项ii1; /项的脚标增1(表示下一轮循环要计算下一项了)e

18、nd;printf(前d项和为:d,int(n),int(S);7/定义函数f(x)x3x22x2/方程f(x)0有三个实数解:sqrt(2),1,sqrt(2)function yf(x)yx3x22*x2;endfunction/用户输入初始区间的左右端点disp(请输入实根所在初始区间a,b:);ainput(a);binput(b);yaf(a);ybf(b);/用户输入计算精度dabs(input(请输入计算精度(输入的越小精度越高,但计算花费的时间就越多):);/下面通过二分法求符合精度的近似解x0;errf;while(abs(ba)d)x(ab)/2;yf(x);if(y0)t

19、hen break;end; /若此时x的值正好是方程的解,则退出循环if(y*ya0)thenbx;ybf(b);elseif(y*yb0)thenax;yaf(a);elseerrt;break;end;end;if(errt)thendisp(计算中出现问题,可能是在您输入的初始区间中没有实根);elseprintf(方程的近似解为:xf,x);end;8法一disp(请依次输入f(x)ax2bxc的系数);ainput(a);if(a0)thendisp(系数a不能为0!);abort;end;binput(b);cinput(c);disp(请输入区间的左右端点:);x1input(

20、x1);x2input(x2);if(x1x2)then begindisp(区间端点输入错误!);abort;end;x0b/(2*a); /对称轴if(a0)then /如果开口朝上if(x0x1)then /如果对称轴在给定区间的左侧,则min_va*x12b*x1c; /在xx1处取得最小值max_va*x22b*x2c; /在xx2处取得最大值elseif(x0(x1x2)/2)then /如果对称轴在区间x1,x2的左半部分,则min_va*x02b*x0c; /在顶点处取得最小值max_va*x22b*x2c; /在xx2处取得最大值elseif(x0x2)then /如果对称轴

21、在区间x1,x2的右半部分,则min_va*x02b*x0c; /在顶点处取得最小值max_va*x12b*x1c; /在xx1处取得最大值else /如果对称轴在区间x1,x2右侧,则min_va*x22b*x2c; /在xx2处取得最小值min_va*x12b*x1c; /在xx1处取得最大值end;else /如果开口朝下if(x0x1)then /如果对称轴在给定区间的左侧,则max_va*x12b*x1c; /在xx1处取得最大值min_va*x22b*x2c; /在xx2处取得最小值elseif(x0(x1x2)/2)then /如果对称轴在区间x1,x2的左半部分,则max_va

22、*x02b*x0c; /在顶点处取得最大值min_va*x22b*x2c; /在xx2处取得最小值elseif(x0x2)then /如果对称轴在区间x1,x2的右半部分,则max_va*x02b*x0c; /在顶点处取得最大值min_va*x12b*x1c; /在xx1处取得最小值else /如果对称轴在区间x1,x2右侧,则max_va*x22b*x2c; /在xx2处取得最大值min_va*x12b*x1c; /在xx1处取得最小值end;end;printf(最小值f,n最大值f,min_v,max_v);法二(为法一的简化版)ainput(a);binput(b);cinput(c)

23、;x1input(x1);x2input(x2);x0b/(2*a); /对称轴if(x0x1)then /如果对称轴在给定区间的左侧,则v1a*x12b*x1c; /在xx1处取得最小值v2a*x22b*x2c; /在xx2处取得最大值elseif(x0(x1x2)/2)then /如果对称轴在区间x1,x2的左半部分,则v1a*x02b*x0c; /在顶点处取得最小值v2a*x22b*x2c; /在xx2处取得最大值elseif(x0x2)then /如果对称轴在区间x1,x2的右半部分,则v1a*x02b*x0c; /在顶点处取得最小值v2a*x12b*x1c; /在xx1处取得最大值else /如果对称轴在区间x1,x2右侧,则v1a*x22b*x2c; /在xx2处取得最小值v2a*x12b*x1c; /在xx1处取得最大值end;if(a0)thenprintf(最小值f,n最大值f,v1,v2);elseprintf(最小值f,n最大值f,v2,v1);end;测试五1C 2C 3A 4C 5A6y1;x0?;y0 72 857,8 96,5

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1