1楼:匿名用户
函数文件matmult_20150101.mfunctionmatrixproduct=matmult_20150101(a,b)
[m,n]=size(a);
[x,y]=size(b);
if(n~=x)
disp(['矩阵维度不匹配'])
return
endmatrixproduct=zeros(m,y);
fori=1:m
forj=1:y
fork=1:n
matrixproduct(i,j)=matrixproduct(i,j)+a(i,k)*b(k,j);
endend
end调用示例
>>a=[123;456];
>>b=[1111;2345];
>>c=[1111;2345;3456];
>>matmult_20150101(a,b)矩阵维度不匹配
>>matmult_20150101(a,c)ans=
14192429
32435465
>>a*c%直接计算
ans=
14192429
32435465
matlab编程:给定矩阵a和b,请写一函数计算两矩阵的乘积,a和b作为该函数的输入参数,要求要判断两个矩阵是
2楼:匿名用户
第一楼的程序错误,没有提示输入a,b矩阵!
我把程序修改后完全能实现,运行时提示输入a,b矩阵,且能得结果!
程序源码如下:
function c=bicu(a,b)
a=input('a matrix=') ;
b=input('b matrix=');
[m1,n1]=size(a);
[m2,n2]=size(b);
if n1==m2
c=zeros(m1,n2);
for i=1:m1
for j=1:n2
for k=1:n1
d=a(i,k)*b(k,j);
c(i,j)=c(i,j)+d;
endend
endelse disp(['matrix a and b could not be multiplied']);
end保存为bicu.m后即可运行!
希望能对你有帮助!
3楼:匿名用户
function c=bicu(a,b)
[m1,n1]=size(a);
[m2,n2]=size(b);
if n1==m2
c=zeros(m1,n2);
for i=1:m1
for j=1:n2
for k=1:n1
d=a(i,k)*b(k,j);
c(i,j)=c(i,j)+d;
endend
endelse disp(['matrix a and b could not be multiplied']);end
4楼:匿名用户
size_a = size(a);
size_b = size(b);
if (size_a(2) == size_b(1))disp(['matrix a and b could be multiplied']);
else
disp(['matrix a and b could not be multiplied']);end
matlab编写m文件求两矩阵的乘法 有问题 请高手指点
5楼:匿名用户
很高兴为您解答这个问题,matlab中两个矩阵是可以直接相乘的,比如c=a*b。
如果要自己编程来实现,可以这样做。
function [c]=mutiply_matrix(a,b)[m1,n1]=size(a);
[m2,n2]=size(b);
if(n1~=m2)
c=;return c;
endc=zeros(m1,n2);
for i=1:m1
for j=1:n2
for k=1:n1
c(i,j)+=a(i,k)*b(k,j);
endend
endreturn c;
end希望可以帮助你,祝学习进步!
6楼:时砂之王的
matlab中不是可以直接进行矩阵计算
用matlab编程:使用for函数编写一个程序实现sum(a)的功能,其中a为矩阵。急求???
7楼:尼克
fuction b=sumf(a)
%说明部分
b=zeros(n,1);
for n=1:n
for m=1:m
b(n)=b(n)+a(n,m);
endend
手边没电脑第四行不知道会不会有错
8楼:匿名用户
[n,m]=size(a);
a = 0;
for n = 1:n
for m = 1:m
a = a + a(n,m);
endend
matlab编写m函数文件,要求具有两个输入变量:a和n,对于输入矩阵a,找出a中大于或等于n的元素值并显示
9楼:匿名用户
假设函数名为fun(可以自己改)
新建一个m文件,保存一下内容:
function x=fun(a,n)
x=a(:);
id=find(a>> a=[1 2 1 3;4 3 4 3;3 2 3 4];n=2;
>> x=fun(a,n)
扩展资料:fix(x):无论正负,舍去小数至相邻整数。
floor(x):下取整,即舍去正小数至相邻整数。
ceil(x):上取整,即加入正小数至相邻整数。
rat(x):将实数x化为多项分数。
rats(x):将实数x化为分数表示。
sign(x):符号函数(signum function)。
当x<0时,sign(x)=-1。
当x=0时,sign(x)=0。
当x>0时,sign(x)=1。
rem(x,y):求x除以y的余数。
***(x,y):整数x和y的最大公因数。
lcm(x,y):整数x和y的最小公倍数。
exp(x) :自然指数。
pow2(x):2的指数。
10楼:匿名用户
clear,clc
a=input('输入矩阵a=');
n=input('n=');
j=1;
for i=1:length(a)
if a(i)>n
b(j)=a(i)
j=j+1;
endend
matlab!编写一个函数m文件,要求有函数说明行,声明行等。能够实现2个数相乘和相加,并能带回运算结果。
11楼:f龙吟决
functionanswer=addplu(a,b,type)iftype=='+'
answer=a+b;
return;
endiftype=='-'
answer=a-b;
return;
endend
%说明自己加吧,你还可以加进去乘除呢
求两个函数的乘积的程序用matlab写的
12楼:
不明白你的想法,说清楚点下次,最好附个例子,有助于解。。。
你的,我大胆猜猜了,应该是
比如x=1:100;%向量
y=sin(x).*cos(x);%这个要加点而x=2;%数值
y=sin(x)*cos(x);%这个不要加点就这样了....
matlab解答:1。使用for函数编写一个程序实现sun(a)的功能,其中a为矩阵 20
13楼:匿名用户
这个不用验证了,很多人做过验证,包括我。肯定是向量化的矩阵计算远远优于循环计算。
14楼:匿名用户
sun?什么东西?日函数?