필터 지우기
필터 지우기

Creating a counting vector for "wins"

조회 수: 1 (최근 30일)
Elliot Gegen
Elliot Gegen 2019년 2월 27일
댓글: Elliot Gegen 2019년 3월 10일
Hello, I am doing an assignment for class which is called "even and odds" . It is similar to rock paper scissors but easier. What I am having trouble on is count the wins for each player. Here is my code
totalgames = 100;
odd_wins = zeros(1,totalgames);
even_wins = zeros(1,totalgames);
Totalgames = [1:totalgames];
for i=1:totalgames
x1(i) = randi(1:2,1);
x2(i) = randi(1:2,1);
total = x1(i)+x2(i);
if (total == 3);
odd_wins(i) = odd_wins(i) + 1;
else
even_wins(i) = even_wins(i) + 1;
end
end
My goal is to have odd_wins and even_wins row vector to keep track of how many times they have one for example [1,1,1,2,3,4,4,4,5...etc]. But these vectors always return [0,0,0,1,0,1,1...etc] where 0 means it lost and 1 means it won. How can I make it so it adds one to the value before it? Thank you!

채택된 답변

Sreelakshmi S.B
Sreelakshmi S.B 2019년 3월 4일
A simple solution:
totalgames = 100;
odd_wins = zeros(1,totalgames);
even_wins = zeros(1,totalgames);
%% special case for the first game
x1(1) = randi(2);
x2(1) = randi(2);
total = x1(1)+x2(1);
if (total == 3)
odd_wins(1) = 1;
else
even_wins(1) = 1;
end
for i=2:totalgames
x1(i) = randi(2);
x2(i) = randi(2);
total = x1(i)+x2(i);
if (total == 3)
odd_wins(i) = odd_wins(i-1) +1;
even_wins(i) = even_wins(i-1);
else
even_wins(i) = even_wins(i-1) + 1;
odd_wins(i) = odd_wins(i-1);
end
end

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Just for fun에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by