How to output as a vector
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
ive got a coin toss simulation game where score is kept.
function = coin_toss(s(0),N)
% coin toss simulation
% a coin is tossed n times, at each point a score is given +1 for heads
% and -1 for tails.
N=input(10)
for k=1:N
rand_number=rand;
if random_number<0.5
random_number(k,1)=-1;
else
random_number(k,1)=1;
for i=1:N,
s(0)=-1
s(N)= s(N-1)+random_number
end
end
end
I basicly want to have an output of the scores after each flip divided by the flip number in a vector e.g
[(-1/1),(s(1)/2),(s(2),3)........ (s(N)/(N+1)] [-1,
0 Kommentare
Akzeptierte Antwort
José-Luis
am 30 Okt. 2012
Bearbeitet: José-Luis
am 30 Okt. 2012
What's the meaning of N = input(10)? I am guessing that what you wanted to do is to pass N to a function. But, if so, why ask for its value again inside the function? And if you know the first value is always -1 you don't really need to pass it either.
If you want to return a vector
function your_result = coin_toss(N);
%Preallocating for your_result:
your_result = zeros(N,1);
%Perform your calculations
your_result(1) = -1;
for ii = 2:N
%do your stuff
your_result(ii) = %You might know how to do this since it has already been answered
end
%You might also know how to do the rest. Hint: cumsum()
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu MuPAD finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!