Extracting values of a function into an array
조회 수: 26 (최근 30일)
이전 댓글 표시
Hey guys!
Hope you are doing well! I am currently working on a project that requires me to nest my functions and to call upon different functions. One such function has three inputs, and one output.
The input varies as it progresses through a loop, which overwrites my output value (so for input 1, it will give output 1, then for input 2 it will provide me output 2, overwriting the first output). I don't want that to happen, and I want to store each output value in an array, as my function calculates the output, such that the input 1 gives me output 1, input 2 gives me output 2, and all of these output values are stored in an array.
I don't want to manually index each element, because its too cumbersome and also because the number of inputs depends on the user, which means I don't know what the index should be anyways!
Thanks in advance for any help!!!!
댓글 수: 0
채택된 답변
Ameer Hamza
2020년 9월 9일
편집: Ameer Hamza
2020년 9월 9일
If the size of vector is not too large or execution speed is not a critical consideration then you can use dynamic allocation. Something like this. vector 'a' contains the value returns by each call of myFun
a = [];
while 1
x = input('x: ');
y = input('y: ');
z = input('z: ');
a = [a myFun(x, y, z)];
if upper(input('Do you want to enter again? (Y/N)', 's')) == 'N'
break;
end
end
function a = myFun(x, y, z) % example
a = x + y + z;
end
댓글 수: 4
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!