电科132王健的matlab课程报告Word格式.docx
- 文档编号:21881117
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:12
- 大小:116.44KB
电科132王健的matlab课程报告Word格式.docx
《电科132王健的matlab课程报告Word格式.docx》由会员分享,可在线阅读,更多相关《电科132王健的matlab课程报告Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
%t函数
x=cos(t);
x=[x(1:
2:
end-1)x
(1)];
%t的横坐标函数
y=sin(t);
y=[y(1:
end-1)y
(1)];
%t的纵坐标函数
plot(x,y,'
r'
);
%用红色线显示图像
axisequal;
%坐标轴的长度单位设成相等
axisoff%清除坐标刻度
N=10;
T=N*pi*(0:
0.0005:
1);
%T函数
X=sin(T);
Y=cos(T);
%编译X、Y关于T的函数
plot(X,Y,'
g'
%用蓝色线在原图象上显示动态图像
holdon;
%使当前轴及图形保持而不被刷新,再次基础上再画图
comet(X,Y,0.02);
%质点运动轨迹动画的绘制
holdoff%使当前轴及图形不在具备被刷新的性质,关闭在此基础上的再画图
运行结果:
2.第二部分
图形处理
a=[-3:
0.2:
3];
%定义横坐标
b=1/sqrt(2*pi)*exp(-1/2*a.^2);
%定义纵坐标
subplot(2,2,1),plot(a,b,'
r--*'
)%用点画线符号*显示在二行二列的第一行第一列的坐标图上
subplot(2,2,2),plot(a,b,'
r*'
)%用细实线符号*显示在二行二列的第一行第二列的坐标图上
X=-1:
0.1:
1;
Y=X'
;
X1=X.^2;
Y1=Y.^2;
x=ones(3,1);
x=ones(length(X),1);
%生成X长度行1列且所有元素均为1的矩阵
y=ones(1,length(Y));
%生成1行Y长度列且所有元素均为1的矩阵
X1=x*X1;
Y1=Y1*y;
Z=X1+Y1;
subplot(2,2,3),mesh(X,Y,Z);
%显示网格线在二行二列的第二行第一列的坐标图上
subplot(2,2,4),surf(X,Y,Z);
%显示网格线在二行二列的第二行第二列的坐标图上
3.第三部分
Matlab函数指令
symsxa%定义符号函数
f1='
sin(x^2)'
f2='
3*a^2+5*a+3'
a1=2;
a2='
100'
diff(f1,x)%对f1函数关于x一次求导
isstr(a1)%判断a1是不是字符串类型的
subs(f1,'
x'
'
b'
)%将f1函数中的x用b赋值
int(f2,a)%将f2关于a的积分
double(a1)%将a1转为双精度浮点类型
4.第四部分
判定一个数是不是素数
functiona=b13461220(b)%定义一个功能函数判定一个数是不是素数
fori=2:
(b-1)
a=mod(b,i);
ifa==0
a='
不是素数'
break;
else
%continue;
是素数'
end
end
5.第五部分
将行列式化成最简行列
functionx=b13461220(x)%定义一个功能函数将行列式化成最简行列式
[ab]=size(x);
fork=1:
b-1
fori=a:
-1:
k+1
forj=b:
k
x(i,j)=x(i,j)-x(k,j)*(x(i,k)/x(k,k));
6.第六部分
二分法计算函数
functionc=b13461222(f,a,b)%二分法计算函数
while(b-a)>
1e-7
c=(a+b)/2;
if(f(c)*f(b))>
b=c;
if(f(c)*f(b))<
a=c;
c;
7.第七部分
非不拉列函数
functiony=b13461220(n)%定义一个非不拉列函数
ifn==1||n==2
y=1;
else
y=b13461220(n-1)+b13461220(n-2);
8.第八部分
文件的输写
a=0:
1:
10;
f=[a;
3*a+2];
fid=fopen('
b.txt'
w'
%将指定文件写入b.txt
fprintf(fid,'
%d%d\n'
f);
%将f值输出到指定文件
[c,count]=fscanf(fid,'
%d%d'
[5inf]);
%[c,count]读取[5inf]的数值
fprintf(1,'
c);
%将c值输出
fseek(fid,0,'
eof'
%定文件第零个元素位置
d=ftell(fid);
%得到文件数据
FileSize=%d\n'
d);
%将d值输出
frewind(fid);
%位置指针移到文件首部
FilePosition=%d\n'
fclose(fid);
%关闭文件
9.第九部分
课程训练(数据类型函数库)
clearstudent%清除student变数
student.name='
马云'
%加入name字段
student.id='
阿里巴巴'
%加入id字段
student.scores=[500,900];
%加入scores字段
student%显示结果(student代表一个结构数组的第一个元素)
student
(2).name='
马化腾'
student
(2).id='
腾讯'
student
(2).scores=[300,800];
%此结构太过复杂,matlab并不将所有字段印出
student=struct('
name'
{'
叶良成'
叶鹏飞'
},'
scores'
{[105],[9099]});
student
(1)%显示student
(1)
student
(2)%显示student
(2)
student
(1)=struct('
{[105]});
%输入student1数据
student
(2)=struct('
{[9099]});
%输入student2数据
values=struct2cell(student)%传回的异质数组维度扩大了
王石'
student
(2).age=21;
%加入新数据
[105]);
student=rmfield(student,'
%删除scores字段
student%显示student
A=cat(2,student.scores)%A=cat(dim,structureField);
dim=1代表上下并排以改变横列的维度;
dim=2代表左右并排以改变直行的维度
average=mean(cat(2,student.scores))%计算平均值
10);
90);
student(3)=struct('
龙傲天'
11);
%输入student3数据
fori=1:
length(student)%打印每个学生的名字
fprintf('
student%g:
%sscores%g\n'
i,student(i).name,student(i).scores);
10.心得体会
一学期的MATLAB学习已经结束,虽然时间很短,但我还是从中学到了很多,对MATLAB有了一定的了解。
Matlab这是一个基于矩阵运算的软件,它的运算功能非常强大,编程效率高,强大而智能化的作业图功能,可扩展性强,熟悉其最基础的功能,锻炼了我的实际动手能力。
但我觉得想要学好MATLAB是不容易的,这是一件需要持之以恒的事,必须要坚持不懈的学习,还需要敢于开口向别人请教,更需要我们勤于思考,勤于记忆,勤于动手。
程序设计是实践性和操作性很强的事情,需要我们亲自动手。
因此,我觉得经常自己动手实际操作设计程序是非常重要的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 132 matlab 课程 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)