王勇数学实验

发布 2022-07-02 03:08:28 阅读 4769

实验2 matlab程序设计。

实验目的:1.掌握脚本式m文件和函数式m文件的编写、调试和运行;

2.掌握从分析问题到算法设计再到程序实现的全过程。

实验内容:1.编写求[200,300]之间第一个能被21整除的整数的脚本式m文件,并给出运行的方法和结果。

2.编写用5次多项式拟合函数y=sin(x),x∈[0,2π]的脚本式m文件,要求绘图观察拟合的效果。

3.编写求多项式p(x)=anxn+an-1xn-1+…+a1x+a0的值的函数式m文件(不能调用函数polyval),要求通过实例调试通过。

4.编写计算第n个fibonnaci数的函数式m文件,并应用它求第15个fibonnaci数。

5.按“题目分析→程序设计→实现算法的程序→实例应用”的步骤解决下面的问题。

救援问题:假设洪水把一个村庄淹没了,只有那些比较高的房屋的屋顶露出水面,人们已经爬上屋顶等待求援。如右图,在图的原点是大本营,救生船每次从大本营出发,救了人之后将人送回大本营。

图中的点代表屋顶,每个屋顶由其位置坐标和其上的人数表示。救生船每次从大本营出发,以速度50米/分钟驶向下一个屋顶,达到一个屋顶后,救下其上的所有人,每人上船1分钟,船原路返回,达到大本营,每人下船0.5分钟。

假设原点与任意一个屋顶的连线不穿过其它屋顶。假设屋顶数为50,给定屋顶数以及每个屋顶的坐标和人数,求出所有人都到达大本营并登陆所用的时间。并输出所有屋顶的坐标和人数。

6.按“题目分析→程序设计→算法描述→实现算法的程序→实例应用”的步骤解决下面的问题。

奖金问题:过年了,村里要庆祝一下。村长对村里的128个村民说:

做一个游戏,让每个人把出生年+月+日得到一个数。例如:2023年10月28日=1968+10+28=2006。

然后把这个数报上来。村里有一笔钱要作为游戏的奖金,数额为m元。如果有人报上来的数字与m相同,就把这笔钱发给这些人。

如果只有一个人得奖,奖金都归这个人。如果有多于一个人得奖,则他们平分这笔钱。请写一个程序算算都有哪些人得到了奖金?

得到多少?

实验仪器与软件:

1.cpu主频在2ghz以上,内存在512mb以上的pc;

2.matlab 2010a及以上版本。

实验讲评:实验成绩:

评阅教师:20 年月日。

实验2 matlab程序设计。

一、求[200,300]之间第一个能被21整除的整数的脚本式m文件。

clcclear

for i=200:300

if find (mod(i,21)==0)

breakendendi

二、用5次多项式拟合函数y=sin(x),x∈[0,2π]的脚本式m文件。

clcclear

x=0:0.1:2*pi;

y=sin(x);

p=polyfit(x,y,5)

x1=0:0.1:2*pi;

y1=polyval(p,x1);

plot(x,y,'*x1,y1,'k')

三、求多项式p(x)=anxn+an-1xn-1+…+a1x+a0的值的函数式m文件。

求多项式p(x)=anxn+an-1xn-1+…+a1x+a0的值的函数式m文件。

functiony=subs(p,x)

symsx;

p=x.^3+2*x.^2+1;

end 四、计算第n个fibonnaci数的函数式m文件。

计算第n个fibonnaci数的函数式m文件。

function f=fibonnaci(n)

if n>2

f=fibonnaci(n-1)+fibonnaci(n-2);

elsef=1;

end五、救援问题的解决。

1.题目分析。

这是一个实际问题的求和问题。

2.程序设计。

1)定义结构类型的数组以存放屋顶的信息。

2)依次读入屋顶及其上的人数信息,并保存起来。

3)计算所需营救时间。

4)输出营救时间和所有屋顶坐标及人数。

3.实现算法的程序。

function [x,y,r,p,t]=jiuyuan(m)

x为各个屋顶的横坐标。

y为各个屋顶的纵坐标。

r为各屋顶的人数。

p为各屋顶到大本营的距离单位(米)

t为救援所用时间单位(分)

rand(n,m)生成n行m列在元素(0,1)之间的随机矩阵。

randsrc(n,m,[c:d])生成n行m列元素在区间[c,d]上的不平均矩阵x=rand(1,m)*10;

y=rand(1,m)*10;

r=randsrc(1,m,[1:10]);

for i=1:m

p(i)=sqrt(x(i)^2+y(i)^2);

endt=2*p(i)/50+(r(i)*1.5);

end调用[x,y,r,p,t]=jiuyuan(50)

4.实例应用。

六、奖金问题的解决。

1.题目分析。

首先会想到要把128个村民报的数字读进来,一边读一边判断是否与m相同,如果相同就记下这个村民的编号,并累计获奖村民的人数, 最后用记下来的获奖人数去除m,得到每个人所得的奖金。

2.程序设计。

定义一个m为奖金,定义n为获奖人数,用一个矩阵a=来进行对某个村民的出生年月日的计算,用矩阵c=size(b,2)来计算有多少人,sum用来求某个村民年月日之和,用两个嵌套的for循环来实现对某个村民的年月日之和和对获奖的第i个村民的记录,以及第i个获奖村民的金额。

3.算法描述。

1)定义一个数组存放所有村民上报的数据。

2)定义一个数组存放获奖者的编号。

3)定义一个整数存放获奖者人数。

4)村民顺序报上数字,其相应的编号就是存放其数据的数组元素下标:0,1,2,…。

4.实现算法的程序。

clear all

clcm=15;%奖金。

n=0;%获奖人数。

a=[1 2 3 3

7 8 9 8];%第一行是村民的出生年第二行是月第三行是日c=size(b,2);%计算有多少人,size是计算矩阵的行数(1)和列数(2)

b=sum(a);%第n列是第n个村民的年月日之和,sum是每一列的所有行相加。这里可以用这个代替。

for j=1:3

for k=1:c

b(k)=a(1,k)+a(2,k)+a(3,k)

endend”

for i=1:c

if b(i)==m

n=n+1;

d(n)=i;%记录第i个村民获奖。

endend

d%获奖村民编号。

n%获奖人数。

e=m/n%获奖金额。

5.实例应用。

七、实验总结。

通过这次实验你掌握了什么,学会什么,哪些是重点掌握和加以注意的。

通过这次试验,应掌握脚本式m文件和函数式m文件的编写、调试和运行;熟练掌握程序的编写,和运用到时实际问题中。

王勇表态发言稿

引领文明之风,争做文明使者。尊敬的各位领导 亲爱的朋友们 大家好!当人类从远古的蛮荒中走出,是文明之光指引着我们一路前行。几千年的艰难跋涉,几千年的上下求索,我们的民族在前进,我们的社会在进步。历史告诉我们 文明是一种力量,社会需要文明。教师,作为传道授业解惑的育人使者,承载着推动全社会文明进步的重...

初心使命四问心得体会 王勇民

初心使命四问 活动心得体会。根据市委安排,通过本次通过 初心使命四问 活动,对我个人的思想意识有了很大的提高,对共产党人的初心和使命有了更深层次的理解,体会如下 一要树立责任与担当。告诫我们 要始终保持艰苦奋斗 甘于奉献的精神和锐意创新 开拓进取的激情,尽职尽责干好工作。这对于每一名共产党员说,应将...

12年个人年度总结报告王勇

个人年度总结报告。走过2011,再回首,思考亦多,感概亦多,忙并收获着,累并快乐着 成了心曲的主旋律,常鸣耳盼,对我而言,11年的工作是最难忘,印记最深的一年,井下安装和拆除工作比较频繁,经常出现会战的场面。在区里,矿业公司领导的支持下,本人坚决做到爱岗敬业,恪尽职守,基本较好的完成了本职工作,和领...