Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Newbie question - capturing mutliple return from a function into an array

1 回表示 (過去 30 日間)
matal
matal 2011 年 7 月 8 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
A function f() returns 2 numbers. So, I typically call it like this:
[x,y] = f(<inputs>)
Now I want to multiply the outputs of f by 100. Looks like I need 5 lines to do this:
[x,y] = f(<inputs>); temp = [x,y]; temp = temp * 100; x = temp(1); y = temp(2);
This is because [x,y] = 100 * f(<inputs>) doesn't work. Nor does [x,y] = 100 * [x,y];
This seems awkward.
My current workaround has been to wrap f() into another function f_array() that returns the outputs as an array. Any other more elegannt solution?t solution?

回答 (1 件)

the cyclist
the cyclist 2011 年 7 月 8 日
At the very least, you can skip the temp step, and just directly do
[x,y] = f(<inputs>);
x = 100*x;
y = 100*y;

この質問は閉じられています。

製品

Community Treasure Hunt

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

Start Hunting!

Translated by