900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > matlab 调用子函数返回值 matlab学习笔记13_1 函数返回值

matlab 调用子函数返回值 matlab学习笔记13_1 函数返回值

时间:2024-05-25 12:19:56

相关推荐

matlab 调用子函数返回值 matlab学习笔记13_1 函数返回值

一起来学matlab-matlab学习笔记13函数

13_1 函数返回值

觉得有用的话,欢迎一起讨论相互学习~Follow Me

函数返回一个值

返回值不必使用return语句,而是直接将需要返回的变量或矩阵写在function后面

function 返回值/返回矩阵=该函数文件名(参数1,参数2,参数3...参数n)

function x=init_x(x,m,n)

for i=1:m

for j=1:n

x(i,j)=randsample(20,1);

end

end

此示例表示通过参数传入x,m,n的值,然后返回改变之后的x

示例

现在需要将xx矩阵元素完全赋值给一个新矩阵yy,即复制,具体代码如下:

主函数 execute_1.m

clc

clear

%定义xx,yy矩阵大小

m=3;

n=1;

xx=zeros(m,n);

yy=zeros(m,n);

%初始化xx

xx=init_x(xx,m,n);

%将xx矩阵赋值给yy

yy=function_1(xx,yy,m,n

初始化xx的函数 init_x.m

function x=init_x(x,m,n)

for i=1:m

for j=1:n

x(i,j)=randsample(20,1);

end

end

赋值函数 function_1.m

function y=function_1(x,y,m,n)

for i=1:m

for j=1:n

y(i,j)=x(i,j);

end

end

结果截图

函数返回多个值

function [返回值1/返回矩阵1,返回值2/返回矩阵2,...,返回值n/返回矩阵n]=该函数文件名(参数1,参数2,...,参数n)

示例

将xx矩阵和yy矩阵的元素全部交换,并且二者相加后得到一个新矩阵zz

主函数 execute_2.m

clc

clear

%定义xx,yy,zz矩阵大小

m=3;

n=1;

xx=zeros(m,n);

yy=zeros(m,n);

zz=zeros(m,n);

%初始化xx,yy

xx=init_x(xx,m,n)

yy=init_y(yy,m,n)

%交换xx矩阵和yy矩阵的元素,并求出xx和yy相加的新矩阵zz

[xx,yy,zz]=function_2(xx,yy,zz,m,n)

初始化xx和yy的函数 init_x.m,init_y.m

function x=init_x(x,m,n)

for i=1:m

for j=1:n

x(i,j)=randsample(20,1);

end

end

function y=init_y(y,m,n)

for i=1:m

for j=1:n

y(i,j)=randsample(20,1);

end

end

交换矩阵元素以及相加函数 function_2.m

function [x,y,z]=function_2(x,y,z,m,n)

tempx=x;%中间变量

%x和y交换

for i=1:m

for j=1:n

x(i,j)=y(i,j);

y(i,j)=tempx(i,j);

end

end

%x加上y

for i=1:m

for j=1:n

z(i,j)=x(i,j)+y(i,j);

end

end

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。