数学实验练习二 参考答案
人教新课标五年级下测数学第二单元应用题专题训练(Word含答案)

第二单元因数与倍数第一节因数和倍数(P5-P6)1、课前练习。
(1)某药厂生产的感冒灵颗粒,一盒内装10袋,每袋含“对乙酰氨基酚”0.2g。
2盒感冒灵颗粒含“对乙酰氨基酚”多少克?(2)五(3)班有67人,教室长7.2米,宽6.3米,平均每人占多少平方米?(得数保留两位小数)2、课堂训练。
(1)服装厂做一件男上衣需用2.5米布料,一条男裤子需用1.8米布料,现有600米布料,可以做多少件男上衣?(2)一个数是30的因数,又是2和5的倍数,那这个数是多少?(3)一个小于30的自然数,既是8的倍数,又是12的倍数,这个数是多少?(4)一辆汽车1分钟可以行驶0.68千米,照这样的速度计算,这辆汽车100分钟行驶多少千米?(5)学校舞蹈室的宽是6.4米,长是宽的1.5倍.舞蹈室的面积是多少平方米?3、课后巩固。
(1)一间教室的面积是87.04平方米,用边长0.4米的正方形瓷砖铺地,共需这种瓷砖多少块?(2)一袋面粉,按每4千克装一小袋还多1千克,按每6千克装一小袋也多1千克。
这袋面粉至少有多少千克?(3)用48个大小相同的正方形拼成一个长方形,有多少种不同的拼法?第二节练习二(P7-P8)1、课前练习。
(1)粮店运来72吨大米,比运来的面粉的3倍多12吨,运来面粉多少吨?(用方程解)(2)王老师带700元钱为学校购买篮球。
每个篮球45元,这些钱最多可以买多少个篮球?2、课堂训练。
(1)我国发射的人造地球卫星绕地球运行3周约3.6小时,运行20周约需多少小时?(2)一辆汽车和一辆摩托车同时从相距165千米的两地出发,相对开出.汽车每小时行50千米,摩托车的速度是汽车的1.2倍,经过多长时间两车相遇?(3)幼儿园里有一些小朋友,王老师拿了32颗糖平均分给他们,正好分完。
小朋友的人数可能是多少?(4)小朋友到文具店买日记本,日记本的单价已看不清楚,他买了3本日记本,售货员阿姨说应付134元,小红认为不对。
你能解释这是为什么吗?(5)一个数既是24的因数,又是24的倍数,这个数是多少?3、课后巩固。
2022-2023届山东省高三二模数学试题及参考答案

2022-2023届山东省高三二模数学试题及参考答案学好数学的几条建议1、要有学习数学的兴趣。
“兴趣是最好的老师”。
做任何事情,只要有兴趣,就会积极、主动去做,就会想方设法把它做好。
但培养数学兴趣的关键是必须先掌握好数学基础知识和基本技能。
有的同学老想做难题,看到别人上数奥班,自己也要去。
如果这些同学连课内的基础知识都掌握不好,在里面学习只能滥竽充数,对学习并没有帮助,反而使自己失去学习数学的信心。
我建议同学们可以看一些数学名人小故事、趣味数学等知识来增强学习的自信心。
2、要有端正的学习态度。
首先,要明确学习是为了自己,而不是为了老师和父母。
因此,上课要专心、积极思考并勇于发言。
其次,回家后要认真完成作业,及时地把当天学习的知识进行复习,再把明天要学的内容做一下预习,这样,学起来会轻松,理解得更加深刻些。
3、要有“持之以恒”的精神。
要使学习成绩提高,不能着急,要一步一步地进行,不要指望一夜之间什么都学会了。
即使进步慢一点,只要坚持不懈,也一定能在数学的学习道路上获得成功!还要有“不耻下问”的精神,不要怕丢面子。
其实无论知识难易,只要学会了,弄懂了,那才是最大的面子!4、要注重学习的技巧和方法。
不要死记硬背一些公式、定律,而是要靠分析、理解,做到灵活运用,举一反三。
特别要重视课堂上学习新知识和分析练习的时候,不能思想开小差,管自己做与学习无关的事情。
注意力一定要高度集中,并积极思考,遇到不懂题目时要及时做好记录,课后和同学进行探讨,做好查漏补缺。
5、要有善于观察、阅读的好习惯。
只要我们做数学的有心人,细心观察、思考,我们就会发现生活中到处都有数学。
除此之外,同学们还可以从多方面、多种渠道来学习数学。
如:从电视、网络、《小学生数学报》、《数学小灵通》等报刊杂志上学习数学,不断扩展知识面。
6、要有自己的观点。
现在,大部分同学遇到一些较难或不清楚的问题时,就不加思考,轻易放弃了,有的干脆听从老师、父母、书本的意见。
数学实验——线性代数方程组的数值解

数学实验——线性代数⽅程组的数值解实验5 线性代数⽅程组的数值解法分1 黄浩 43⼀、实验⽬的1.学会⽤MATLAB软件数值求解线性代数⽅程组,对迭代法的收敛性和解的稳定性作初步分析;2.通过实例学习⽤线性代数⽅程组解决简化的实际问题。
⼆、For personal use only in study and research; not forcommercial use三、四、实验内容1.《数学实验》第⼆版(问题1)问题叙述:通过求解线性⽅程组,理解条件数的意义和⽅程组性态对解的影响,其中是n阶范德蒙矩阵,即是n阶希尔伯特矩阵,b1,b2分别是的⾏和。
(1)编程构造(可直接⽤命令产⽣)和b1,b2;你能预先知道⽅程组和的解吗?令n=5,⽤左除命令求解(⽤预先知道的解可验证程序)。
(2)令n=5,7,9,…,计算和的条件数。
为观察他们是否病态,做以下试验:b1,b2不变,和的元素,分别加扰动后求解;和不变,b1,b2的分量b1(n),b2(n)分别加扰动后求解。
分析A与b的微⼩扰动对解的影响。
取10^-10,10^-8,10^-6。
(3)经扰动得到的解记做,计算误差,与⽤条件数估计的误差相⽐较。
模型转换及实验过程:(1)⼩题.由b1,b2为,的⾏和,可知⽅程组和的精确解均为n ⾏全1的列向量。
在n=5的情况下,⽤matlab编程(程序见四.1),构造,和b1,b2,使⽤⾼斯消去法得到的解x1,x2及其相对误差e1,e2(使⽤excel计算⽽得)为:由上表可见,当n=5时,所得的解都接近真值,误差在10^-12的量级左右。
(2)⼩题分别取n=5,7,9,11,13,15,计算和的条件数c1和c2,(程序见四.2),结果如下:由上表可见,⼆者的条件数都⽐较⼤,可能是病态的。
为证实和是否为病态,先保持b不变,对做扰动,得到该情况下的⾼斯消元解,(程序见四.3),结果如下:(为使结果清晰简洁,在此仅列出n=5,9,13的情况,n=7,11,15略去)=10^-10时:=10^-8时:=10^-6时:由上表可见:a)对于希尔伯特阵,随着阶数的增加,微⼩扰动对解带来的影响越来越⼤,到了n=9时,已经有了6倍误差的解,到了n=13时,甚⾄出现了22倍误差的解元素;⽽随着的增加,解的偏差似乎也有增加的趋势,但仅凭上述表格⽆法具体判断(在下⼀⼩题中具体叙述)。
数学实验(南邮)答案2

第二次练习题1、 设⎪⎩⎪⎨⎧=+=+32/)7(11x x x x n n n ,数列}{n x 是否收敛?若收敛,其值为多少?精确到6位有效数字。
>> f=inline('(x+7/x)/2'); syms x; x0=3; for i=1:1:20 x0=f(x0);fprintf('%g,%g\n',i,x0); end 1,2.66667 2,2.64583 3,2.64575 4,2.64575 5,2.64575 6,2.64575 7,2.64575 8,2.64575 9,2.64575 10,2.64575 11,2.64575 12,2.64575 13,2.64575 14,2.64575 15,2.64575 16,2.64575 17,2.64575 18,2.64575 19,2.64575 20,2.64575本次计算运行到第三次结果稳定,可得: 数列}{n x 收敛,收敛到2.645752、 设 ,131211pp p n n x ++++= }{n x 是否收敛?若收敛,其值为多少?精确到17位有效数字。
学号为单号,取7=p >> s=0; for i=1:1:200 s=s+1/i^7;fprintf('%g,%20.17f\n',i,s); end1, 1.00000000000000000 2, 1.00781250000000000 3, 1.00826974737082750 4, 1.00833078252707750 5, 1.00834358252707750 6, 1.00834715477216210 7, 1.00834836903784100 8, 1.00834884587499920 9, 1.00834905495015730 10, 1.00834915495015730 …………………………… 181, 1.00834927738191870 182, 1.00834927738191890 183, 1.00834927738191920 184, 1.00834927738191940 185, 1.00834927738191960 186, 1.00834927738191980 187, 1.00834927738192000 188, 1.00834927738192030 189, 1.00834927738192050190, 1.00834927738192070 191, 1.00834927738192070 192, 1.00834927738192070 193, 1.00834927738192070 194, 1.00834927738192070 195, 1.00834927738192070 196, 1.00834927738192070 197, 1.00834927738192070 198, 1.00834927738192070 199, 1.00834927738192070 200, 1.00834927738192070运行至第190次后稳定,值为1.00834927738192070书上习题:(实验四) 1,2,4,7(1),8,12(改为:对例2,取 120,55,25,5.4=a 观察图形有什么变化.),13,14 。
西师大版二年级数学下册《第3单元三位数的加减法》课时练习

西师大版二年级数学下册《第3单元三位数的加减法》课时练习3.1整十整百数的加减(1)1填空。
(1)14个百减5个百是()个百,写作()。
(2)8个百加7个百是()个百,写作()。
2在〇里填上“>”“<”“=”。
300+700〇400+500 70-30〇80-50150+130〇120+200 300-130〇190-203口算。
40+80= 300+460=430+880= 720-270=参考答案1 (1)9 900 (2) 15 15002 >>< =3 120 760 1310 4503.2整十整百数的加减(2)1填空。
(1)90里面有()个十,210里面有()个十。
(2)16个十是( ),260里有()个百()个十。
2选择:小明家里面有100千克大米,已经吃掉了40千克,还剩下()千克?A.70 B. 60 C. 1403计算下列各题。
530+880= 700+500=810-790= 1340-450=参考答案1 (1) 9 21 (2) 1602 62 B3 1410 1200 20 8903.3练习六1在□里面填上适当的数。
□+150=350 400+900=□830-□=140 700-□=4502 二年级的学生乘车去博物馆,二年级共有学生75人,每辆大巴车可以乘坐30人,2辆大巴车能坐的下吗?需要多少辆?3小明家离学校有7千米,小明每小时能步行3千米,小明在家从6:00出发,8:00能到学校吗?参考答案1 200 1300 690 2502不能 33不能4 3.4加减法的简单估算51下面的数分别接近几百?填一填。
6 397() 415() 204() 708()72估一估,填上合适的数。
8一个电磁炉原价507元,现价304元,大约便宜()元。
9一个电视机原价999元,现价698元,大约便宜()元。
103白楼小学的同学共捐出了398本故事书,另外他们还捐赠了596本科技书,11捐出的科技书比故事书大约多了多少本?121314科技书和故事书一共大约捐了多少本?15161819202122232425参考答案261 400 400 200 700272 200 300283 200 100029 3.5练习七301估一估,把得数填在后面的□里。
教科版小学六年级下册数学实验题

教科版小学六年级下册数学实验题
本文档主要介绍教科版小学六年级下册数学实验题,内容涵盖以下几个方面:
实验目的
通过开展数学实验,激发学生的数学兴趣,提高学生的数学思维能力和创新意识。
实验内容
本册的数学实验包含以下几个方面:
1. 图形的旋转和对称性实验
2. 三角形的分类实验
3. 平行四边形与梯形的性质实验
4. 角的度量实验
5. 直角三角形的性质实验
每个实验都有详细的实验步骤和实验方法,帮助学生更好地理解和掌握数学知识。
实验意义
数学实验是数学教学的一种创新型教学方法,它能使学生在探究中研究,在实践中提高,加深学生对数学知识的理解和记忆,能够更好地培养学生的观察能力、动手能力和创新能力。
实验操作要求
为了保证实验的顺利进行和实验结果的准确可靠,学生在进行数学实验时,需要注意以下几点:
1. 仔细阅读实验操作方法,按照操作步骤进行实验。
2. 注意实验器材的使用和存放,保持实验桌面整洁。
3. 将实验结果记录在实验桌面上的实验记录表上,并认真分析实验结果。
4. 实验过程中要注意安全,遵守实验室安全规定,防止意外事故的发生。
实验总结
通过进行数学实验,学生能够更直观地感受和理解数学知识,培养学生的数学思维和创新意识,有利于提高学生的数学成绩和科学素养,同时也有利于激发学生对数学的兴趣和热爱。
希望本文档能够对教师和学生在进行数学实验时有所帮助。
数学实验____方程模型及其求解算法_参考答案
实验2 方程模型及其求解算法一、实验目的及意义[1] 复习求解方程及方程组的基本原理和方法;[2] 掌握迭代算法;[3] 熟悉MATLAB软件编程环境;掌握MATLAB编程语句(特别是循环、条件、控制等语句);[4] 通过范例展现求解实际问题的初步建模过程;通过该实验的学习,复习和归纳方程求解或方程组求解的各种数值解法(简单迭代法、二分法、牛顿法、割线法等),初步了解数学建模过程。
这对于学生深入理解数学概念,掌握数学的思维方法,熟悉处理大量的工程计算问题的方法具有十分重要的意义。
二、实验内容1.方程求解和方程组的各种数值解法练习2.直接使用MATLAB命令对方程和方程组进行求解练习3.针对实际问题,试建立数学模型,并求解。
三、实验步骤1.开启软件平台——MATLAB,开启MATLAB编辑窗口;2.根据各种数值解法步骤编写M文件3.保存文件并运行;4.观察运行结果(数值或图形);5.根据观察到的结果写出实验报告,并浅谈学习心得体会。
四、实验要求与任务基础实验1.用图形放大法求解方程x sin(x) = 1. 并观察该方程有多少个根。
画出图形程序:x=-10::10;y=x.*sin(x)-1;y1=zeros(size(x));plot(x,y,x,y1)MATLAB运行结果:-10-8-6-4-20246810-8-6-4-22468扩大区间画图程序:x=-50::50;y=x.*sin(x)-1;y1=zeros(size(x));plot(x,y,x,y1)MATLAB 运行结果:由上图可知,该方程有偶数个无数的根。
2.将方程x 5+5x3- 2x + 1 = 0 改写成各种等价的形式进行迭代,观察迭代是否收敛,并给出解释。
(1)画图:x1=-6::6;x2=-3::3;x3=-1::1;x4=::;y1=x1.^5 +5*x1.^3-2*x1+1;y2=x2.^5 +5*x2.^3-2*x2+1;y3=x3.^5 +5*x3.^3-2*x3+1;y4=x4.^5 +5*x4.^3-2*x4+1; subplot(2,2,1),plot(x1,y1),title('子图 (1)') ,grid on, subplot(2,2,2),plot(x2,y2),title('子图 (2)'),grid on, subplot(2,2,3),plot(x3,y3),title('子图 (3)'),grid on, subplot(2,2,4),plot(x4,y4),title('子图 (4)') ,grid on,由图可知 x 的初值应在(,)之间。
人教版数学4-6年级下册【第5课】图文讲解、知识点及练习
人教版数学4-6年级下册【第5课】图文讲解、知识点及练习展开全文四年级电子课本▼▼▼▼知识点生活中怎么用数学呢?在解决租船类的实际问题时,可以先假设,再调整,从而找出最优方案。
参考答案1、(说出运算顺序略)70 330 215 47002、320×[(128+147)÷25]=3520(920+438÷73)×34=314843、(竖排)64 136 136 10 390 2404、900÷40=22(元) (20)(元)500÷20=25(元)多租大车便宜。
(326+14)÷40=8(辆)……20(人)余下20人正好租1辆小车,所以租8辆大车、1辆小车最省钱。
5、(1)方案一的出游价格:150×6+60×4=1140(元)方案二的出游价格:(6+4)×100=1000(元)1000<1140,选方案二合算。
(2)方案一的出游价格:150×4+60×6=960(元)方案二的出游价格:(4+6)×100=1000(元)960<1000,选方案一合算。
6、3×4+6×2=24(6+4-2)×3-243×6+2+4=24 6×4- (3-2) =24(答案不唯一)图文解读点击图片,查看大图▼▼▼▼练习三课堂练习同步练习11.实验二小篮球社团26名队员去划船。
每条小船限坐4人,租金24元;每条大船限坐6人,租金30元。
怎样租船才能使租金最少?想:(1)小船每个座位(6)元,大船每个座位(5)元,租(大)船便宜。
(2)要想租船租金最少,第一要尽量租(大)船,第二尽量不能空座位。
(3)租(3)条大船和(2)条小船刚好可以坐26人,此时租金最少。
列式解答:30×3+24×2=138(元)2.有40名同学去划船,大船每条限坐6人,租金10元;小船每条限坐4人,租金8元。
北师大版小学三年级上册数学练习题及答案
北师大版小学三年级上册数学练习题及答案1.北师大版小学三年级上册数学练习题及答案篇一1、19与7相乘,积是(),再加上12得()。
2、计算56÷(25-18)时,要先算(),再算()。
3、在一个算式中,既有加、减法,又有乘、法,要要先算(),再算()。
4、妈妈买回3捆铅笔,每捆8枝,送给妹妹12枝,还剩()枝。
5、在○里填上“>”、“<”或“=”。
60÷2+4○60÷(2+4)60+4×2○60÷(4+2)5×2+3○5×(2+3)40-20÷5○(40-20)÷56、100与72的差除以4是多少?列式是()。
7、44加25的和是(),再减去39得()。
8、5个小朋友折纸鹤,每人折了9只,现在需要折100只,还要折()只参考答案:1、(133)(145)2、(减法)(除法)3、(乘、除法)(加、减法)4、(12)枝5、在○里填上“>”或“<”。
60÷2+4>60÷(2+4)60+4×2>60÷(4+2)5×2+3<5×(2+3)40-20÷5>(40-20)÷56、((100-72)÷4)7、(69),(30)8、(55)只2.北师大版小学三年级上册数学练习题及答案篇二我是小判官,对的画“√”,错的画“×”。
1、60-20÷4和(60-20)÷4运算顺序不同,计算结果一样。
()2、计算45÷(23-14)要先算加法,再算除法。
()3、在有括号的算式里,也要先算乘除法,再算加减法。
()4、32-32÷8=0()5、20乘3的积与2个30相加的和相等。
()参考答案:1、(×)2、(√)3、(×)4、(×)5、(√)3.北师大版小学三年级上册数学练习题及答案篇三1.直接写出得数。
数学秋季实验版教案 4年级-5 近似数
《数学》教案
教材版本:实验版. 学校: .
第一课时
第二课时
大胆闯关:
1.380万 7461万 89万 12302万 29万 4597万
12302万>7461万>4597万>380万>89万>29万
2.79999 75000
3.54999 45000
4.43210 43000
5.957957 96万
补充练习:
1.有一个数,它的千万位和千位上的数字都是8,其余各位上的数字都是0。
(1)这个数写作()。
(2)这个数读作()。
(3)这个数是()位数,最高位的计数单位是()。
(4)把这个数四舍五入到万位约是()。
2.将两个数分别四舍五入到万位,都近似等于5万,而且这两个数相差5,其中一个大于5万,一个小于5万,这两个数可是()和()。
3.一个五位数用“四舍五入”法省略万位后面的尾数后,得到的近似数是8万。
这样的五位数中大小发生改变的有多少个?
补充练习答案:
1.(1)80008000(2)八千万八千(3)八千万(4)8001万
2. 49997 50002 (答案不唯一)
3.四舍时,五位数的万位是8,千位最大是4,共有4999个;
五入时,五位数的万位是7,千位最小是5,共有5000个。
84999-80001+1=4999(个)
79999-75000+1=5000(个)
4999+5000=9999(个)。
答:这样的五位数中大小发生改变的有9999个。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数学实验二实验内容:学习matlab的m文件编写和函数的编写,体会matlab编程特点,掌握matlab 的编程基本方法。
要求:一.学习ppt教案的例题代码,能正确的输入、运行代码;二.写出如下各段代码的作用,将以下各段循环执行的代码,改为不需要循环的矩阵和数组运行,并使用tic,toc测试不同代码的执行时间:%程序1,文件名:ex2_2_1.mticdx = pi/30;nx = 1 + 2*pi/dx;for i = 1:nxx(i) = (i-1)*dx;y(i) = sin(3*x(i));endtoc以上程序实现将[0,2*pi]间隔pi/30分成60等分,x和y分别为61个元素的数组,y为计算sin(3x)的值。
以上程序可以使用简单的matlab数组计算实现:x2=0:pi/30:2*pi;y2=sin(3*x2);大家可以比较一下,x1和x2完全相同,y和y2也完全相同。
%程序2,文件名:ex2_2_2.mticA=round(2+rand(50,60)*6); 生成一个在[2,8]上均匀分布的50*60随机数组[X,Y]=size(A); 求出其大小;X=50,Y=60minA=A(1,1); 设最小值为矩阵A的第1行1列的元素for i=1:Xfor j=1:Yif A(i,j)<minAminA=A(i,j);minX=i;minY=j;endendend 以上程序按行、列搜索矩阵A的最小值,若当前值A(I,j)小,则将最小值设为当前值;[minA ,minX,minY] 输出矩阵最小值minA及矩阵最小值所在的行minX、列minY。
toc上述程序可以使用find函数及min函数实现;此时只需: minA=min(A(:));[minX,minY]=find(A ’==minA,1);%注意此处需将矩阵A 转置,因为matlab 中是按列优先搜索的,而题目的程序是按行有限搜索。
Find 函数中,如果第二个参数是1,则只找出第1个满足条件的值的下标。
三.以下的级数可以计算π的近似值1111(1)4135721n n -⎛⎫--+-+++ ⎪-⎝⎭写一个Matlab 的函数pifun.m 来计算该级数,其中,n 为函数的输入变量,对于固定的n ,函数输出π的近似值.要求程序体有必要的解释语句。
要求:(1)第一种方法:使用for 循环实现;(2)第二种方法:使用while 循环实现;(3)第三种方法:使用递归实现;(4)第四种方法:使用向量运算;(5)测试pifun(499)的值,并分别使用tic 与toc 来测试函数pifun(80000)的计算时间。
并解释原因。
第一问的编程为:% 第一种方法:使用for 循环实现:function mypi=pifun(n)mypi=0;for i=1:nmypi=mypi+(-1)^(i+1)/(2*i-1);%这里是元素的乘法和除法,加不加点没关系; endmypi=4*mypi;%第二种方法:使用while 循环实现:function mypi=pifun(n)mypi=0;i=0;while i<ni=i+1;mypi=mypi+(-1)^(i+1)/(2*i-1);%这里是单个元素的乘法和除法,加不加点没关系; endmypi=4*mypi;%第三种方法:使用递归实现function mypi=pifun(n)if n==1mypi=4;elseif n>1mypi=pifun(n-1)+4*(-1)^(n+1)/(2*n-1);%这里是单个元素的乘法和除法,加不加点没关系;elseerror('wrong input parameter!')end% 第四种方法:使用向量运算function mypi=pifun(n)i=1:n;s=4*(-1).^(i+1)./(2.*i-1);%注:此处向量除以向量,是向量的每个元素进行除法,一定要加 . mypi=sum(s);% 第五种方法:使用级数运算function mypi=pifun(n)syms t;s=4*symsum((-1).^(t+1)./(2.*t-1),1,n);%求级数和;mypi=subs(s,s);%符号变量s值为双精度浮点型数据输出;测试pifun(10000)时,在command window下,输入:format long;pifun(80000)ans =3.14158015358975分别让调用不同的函数,体会程序的执行时间的差异。
下面是使用for循环的执行时间:>> tic,pifun(80000),tocans =3.14158015358975Elapsed time is 0.031000 seconds.下面是使用while循环的执行时间:>> tic,pifun(80000),tocans =3.14158015358975Elapsed time is 0.031000 seconds.下面是使用递归调用的时间:>> tic,pifun(80000),toc??? Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N)to change the limit. Be aware that exceeding your available stack space cancrash MATLAB and/or your computer.Error in ==> pifun at 24mypi=pifun(n-1)+4*(-1)^(n+1)/(2*n-1);%这里是单个元素的乘法和除法,加不加点没关系;注:运行后出错,因为matlab默认的递归次数只有500次;当使用:set(0,'RecursionLimit',1000),将递归次数修改为1000次后,再运行:>> tic,pifun(1000),tocans =3.1406Elapsed time is 0.032000 seconds.说明递归是很忙很耗费机器时间的;使用向量计算时,运行:tic,pifun(80000),tocans =3.1416Elapsed time is 0.016000 seconds.说明Matlab的向量运算是最快速的。
而使用级数求和时,由于用到符号计算,在实验室的电脑上一度出现死机;运行速度很慢。
四. 写一个函数rs=f(s),对输入的字符串变量s,删除其中的小写字母,然后将原来的大写字母变为小写字母,得到rs返回.例如s=”aBcdE,Fg?”,则rs=”be,f?”(提示:可利用find 函数和空矩阵,也可以利用循环语句.小写字母比大写字母的ascii码大32,小写字母a 的ascii码为97).函数的编写并不唯一,有多种编写方法:%第一种方法:使用for 循环查找,效率低function rs=ff(s) %使用传统的for循环实现L=length(s);%得到字符串的长度;SD=double(s);%将字符串转换为它们的asII码;%小写字母比大写字母的ascii码大32;%小写字母a的ascii码为97.rs=[];%生成一个空矩阵k=0;%初始化for i=1:Lif SD(i)>=97 & SD(i)<=122 %判断是小写字母continue;elsek=k+1;rs(k)=SD(i);if SD(i)>=65 & SD(i)<=90 %判断是大写字母rs(k)=SD(i)+32;%将该字符变成小写字母后,记录下该字符endendendrs=char(rs);%第二种方法:使用for 循环查找,效率低function rs=f(s)rs=[]; %设置为空矩阵,用以存储需要的输出结果;L=length(s);%求出数组的长度for i=1:L %逐个元素判断if s(i)<97 %如果元素的ASCII码小于97,即去掉小写字母if s(i)>=65 &s(i)<=90 %如果元素的ASCII是65-90之间,即大写字母temp=s(i)+32; %将它改为小写字母,rs=[rs,temp];%将该字母添加到输出数组中;elsers=[rs,s(i)];%如果不属于大写字母,则直接添加到数组中。
endendendrs %输出结果。
%第三种方法:使用find函数,效率高Function rs=ff(s)rs=s(s<97); %第一步:把小写字母去掉;付给rs;x=find(rs>=65 & rs<=90); %第二步:找出rs中的大写字母所在位置;rs(x)=rs(x)+32;%第三步:将这些位置的元素的元素变成小写字母% 以上语句可简写为:rs(rs>=65 & rs<=90)=rs(rs>=65 & rs<=90)+32;%第四种方法:使用find函数,效率高function rs=ff(s) %使用find函数实现:k=find(s<97 | s>122);%找出不是小写字母的元素的下标;rs1=s(k); %得到一个新字符串,该字符串不含小写字母;rs1(rs1>=65 & rs1<=90)=rs1(rs1>=65 & rs1<=90)+32; %将大写字母找出来,并变成小写字母 rs=char(rs1);这个题目要求大家能仔细体会matlab中数组的元素访问的方法;以上这几个语句需仔细体会。
可以极大的方便编程。
测试该程序的时候,在command window中输入:s='*&(rtYTUfg:dsER'ff(s)ans =*&(ytu:er五. 一个自然数是素数,且它的各位数字位置经过任意对换之后仍为素数,则成为绝对素数。
例如113是绝对素数。
(1)请写出一个函数,该函数用来判断输入数字是否是素数。
函数定义如下:[primeNum]=myisprime(inputdata),其中,primeNum返回的是一个逻辑数组,如果输入的数组inputdata中的数为素数,则对应的primeNum中相应位置的元素为1,否则为0。
(提示:matlab的函数logical 可以将普通数组转换为逻辑数组)function [primeNum]=myisprime(inputdata) %判断输入的数组的元素是否为素数L=length(inputdata);primeNum=ones(1,L);%数组首先全部置1;for i=1:Lif inputdata(i)==1 %如果数字为1,输出为0primeNum(i)=0;elsefor k=2:sqrt(inputdata(i))if rem(inputdata(i),k)==0 %若 inputdata(i)能被从1到sqrt(inputdata(i))的数字整除primeNum(i)=0;break; %该数字不是素数endendendendprimeNum=logical(primeNum); %将0-1数组转换成逻辑数组(2)测试该函数的正确与否。