MATLAB如何让两个等元素数目的向量相除
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/30 16:39:05
and('state',123);result=round(rand(1,1000))*2-1;%生成一个-1,1的矩阵,供下面测试Lr=result
如a=[1234;34267;34456554];b=find(a>10)那么就会输出b=236912这是以列优先的单下标输出方式输出下标
esult=(A==B);用==判断
C=[A(1:4),B(5:6)]D=[A(5:6),B(1:4)]
A=[1891881871841781691551371189980645139301012152030446386112136157171180185189190190191];B=abs(A-82
如果是产生任意数,包括小数:randint(1,1,1890)*rand(1,1)+110如果只是整数:randint(1,1,1890)+110也就是说,如果你想产生在a到b之间产生一个随机数:ra
A(i,j)表示矩阵A的第i行第j列元素.找到这个元素,接下来如何处理看你自己了.关于矩阵“去掉元素”,我就不知道什么意思了,去了指定元素就不是矩阵了.
这涉及到矩阵的操作.比如A=[369],B=[123]要实现对应的元素相除,用这个命令“A./B”,即点除.点除就实现了你要的功能.扩展:MATLAB是基于矩阵操作的,对元素的操作都要用到“.”,比如
用“点除”A./B对应元素相除用“点除”对应元素相乘用“点乘”
matlab里关于集合运算和二进制数的运算的函数\x0dintersect:集合交集\x0dismember:是否集合中元素\x0dsetdiff:集合差集\x0dsetxor:集合异或(不在交集中的
intersect(a,b)
有没有现成的函数不知道,但是实现起来应该不难.我采用跟C类似的方法经过两次循环实现的.代码如下:[ra,ca]=size(a);[rb,cb]=size(b);fori=1:ra*caforj=1:r
%给个例子,不知道是否你要的效果!a=[12;34]%定义初始矩阵b=a;%结果矩阵初始化fork=1:3fork=1:4cd=(b(k)+1);b(k)=cd*(cd4);%循环矩阵内数值enddi
a=zeros(m,n):定义了一个m行n列的0矩阵.b=ones(m,n):定义了一个m行n列的元素全为1的矩阵.
直接相乘就行比如A=[1,2;3,4];都想乘以2,A*2就行了
sum(sum(A-1))A-1就是矩阵减去一个数sum(sum(A-1))就是先对矩阵各列求和,然后将各列的和相加
a=[2354;3798;2431]b=[1346;8215;93108]fori=1:length(a(:,1))c(i)=length(intersect(a(i,:),b(i,:)))endc=
l{1}(1),就能提取到a中第一个元素了,以此类推
用diff例求y=2x输入:y=2xdiff(y)就行了
x=[1289];x(find(x>5))=5;问题解决很高效