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

1 回表示 (過去 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 Center および File ExchangeGet 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