Hello! How I can use output data from one function as an input for another. And write it in one function

3 次查看(过去 30 天)
Hi! Kindly ask to check where I did mistake . I am trying to use output data [A, B, C, D, E] from another function reflection5 (i calculated it in reflection5 function)
in new function planeLocation5 as an input
this is one function file
function [p, Xr, Yr, Zr, Theta, Phi, Plane ] = planeLocation5(A, B, C, D, E)
[A, B, C, D, E] = reflection5(X0, Y0, Z0, Theta0, Phi0); %i believe this should be correct, butit doesnt work
planes(:,:,1) = [0 3 3; 0 0 3; 0 3 0; 0 0 0; 0 0 0];
planes(:,:,2) = [0 0 3; 3 0 3; 0 0 0; 3 0 0; 0 0 0];
.......
end
at the end I will combine in one main
  2 个评论
Stephen23
Stephen23 2023-3-6
Why not just call them like this?:
[A, B, C, D, E] = reflection5(X0, Y0, Z0, Theta0, Phi0);
[p, Xr, Yr, Zr, Theta, Phi, Plane ] = planeLocation5(A, B, C, D, E);
Aknur
Aknur 2023-3-6
Hi @Stephen23 thank you for your answer. I am calling like this in main where I apply for loop for both function. But when I want run function planeLocation5 separately in planeLocation5.m file I am trying to call data output from function reflection5

请先登录,再进行评论。

回答(1 个)

Prateekshya
Prateekshya 2024-8-30
编辑:Prateekshya 2024-8-30
Hello Aknur,
To pass the output of one function to another function as arguments, you need to define and call the functions correctly. Here is a sample code for achieving the same:
function [X, Y, Z] = fun1(a, b, c)
[a, b, c] = fun2(3, 4); % calling fun2 with 3, 4
X = a;
Y = b;
Z = c;
end
function [a, b, c] = fun2(j, k)
a = j;
b = k;
c = j+k;
end
[X, Y, Z] = fun1(1, 2, 3); % calling fun1 with 1, 2, 3
Please make sure that you are following this format. You can place fun1 and fun2 in different files.
I hope this helps!

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

产品


版本

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by