MATLAB Answers

0

Why is my function generating a vector? Please help?

Trisha Katz さんによって質問されました 2019 年 11 月 6 日
最新アクティビティ James Tursa
さんによって 回答されました 2019 年 11 月 6 日
I am trying to create a function that does the following:
"The function lastname_lab4_tracker generates the increment to be added takes as input a scalar value and
(i) multiplies it by a random number between -.05 and .05
(ii) then adds another random number also between -.05 and .05 and returns the new scalar number
Here is what I have:
function [a,b]=katz_lab4_tracker(x)
a=randi([1,100])*(x);
b=a+x;
end
In the command window I type this: [a,b]=katz_lab4_tracker(rand([-1,1])/(2))
And it returns this:
a=
0×1 empty double column vector
b =
0×1 empty double column vector
What's the deal here? How can I fix this?
Than you for your help!

  0 件のコメント

サインイン to comment.

1 件の回答

James Tursa
Answer by James Tursa
on 6 Nov 2019

A uniform random number between a and b is:
u = a + rand*(b-a)
Generate two of these with a = -0.05 and b = 0.05 and then do the math as outlined in your instructions. Your function will only be returning one value, not two.

  0 件のコメント

サインイン to comment.



Translated by