1. 下段程序执行时,会发生错误,matlab的错误提示为:“error using ==mtimes,inner matrix dimensions must agree.
”。请指出错误所在,并修改之。
clear all
vector = 1:100;
total = 0;
for ii = vector,total = total+ vector * vector ;
endtotal
答:错误在于向量维数不对,无法进行向量相乘,需要将红色语句改为。
total = total+ vector .*vector
这样才能进行计算。
2. 在同一个窗口中使用不同的线型同时绘制曲线: sin(2x)、sin(x2)、sin2x和cos(x),并给出清晰的标注和图例。
x=0:0.01:pi;
y1=sin(2*x);
y2=sin(x.^2);
y3=(sin(x)).2;
y4=cos(x);
plot(x,y1,'b',x,y2,'k-.'x,y3,'r:',x,y4,'g--'
legend('y=sin2x','y=sin(x^2)',y=(sinx)^2','y=cosx',0)
title('y=sin2x,y=sin(x^2),y=(sinx)^2,y=cosx图像')
xlabel('x')
ylabel('y')
text(pi/2,0,'x=pi/2')
3. 设计一个九九乘法表,并用matlab进行实现,写出相应的实现m文件。
x=[1:9];
y=x'*xy =
4. 编写计算小于自然数n的fibonacci级数的matlab函数。
a(1)=1;a(2)=1;
n=input('please input n:')
x=3;while a a(x)=a(x-1)+a(x-2);
x=x+1;
enda=a(a5. 阐述对matlab程序优化的方法的理解。
答:matlab如我们所知,全称为matrix laboratory,也就是矩阵实验室,因此,尽量用矩阵或者向量的运算来代替循环操作,将很大程度上实现程序的优化。同时,matlab完成一项计算与操作,需要通过不同的算法,因此,使用较为高效的算法,使用toolbox内已有的函数,可以使得运算更优更高效。
此外,需要注意,给大型矩阵动态地定维是很费时的,由于matlab变量在使用之前不需要定义和指定维数,当变量新赋值的元素下标超出数组的维数时,matlab就为该数组扩维一次,大大地降低了运行效率。因此,定义大矩阵时,首先用matlab的内在函数(如zeros或者ones)对其先进行定维,然后再进行赋值处理,这样可以显著减少所需时间。同样的,在存在循环时,给用到的变量取初值,也可以减少所需要的时间。
matlab作业
2011029170002王柳。a 一个问题的病态性如何,与求解它的算法有关系。错 b 无论问题是否病态,好的算法都会得到它好的近似解。错 c 计算中使用更高的精度,可以改善问题的病态性。错 d 用一个稳定的算法计算一个良态问题,一定会得到它好的近似解。对 e 浮点数在整个数轴上是均匀分布。错 f ...
matlab作业
matlab语言 第3次作业 字符串,单元数组和结构体 专业 海洋技术 海洋测绘方向 姓名 张体强学号 1026222 1 如何将一个char 数据类型的向量转化为相应的double 型数据类型的数据向量。从式1 到8,判断这些语句是否正确。如果它们正确,那么将产生什么结果?这题不要在电脑中做。1....
matlab作业
电子与通信工程学院。通信系统 实验报告。2013 2014 学年第1学期。调频 fm 系统调制解调 专业 通信工程。班级 通信111 班。学号 姓名 指导教师姓名陈多瑜。2013年 11 月日。1.频率调制或调频 fm 1 设调制信号为m t 调频信号的数学表达式为。例如 m t 的时域波形为。m ...