comparing rows in matrices

1 Ansicht (letzte 30 Tage)
Tor Fredrik Hove
Tor Fredrik Hove am 8 Mai 2012
function lottonumbers = draw_lottonumbers(draws, balls,rows)
% A function that draws 'draws' random integers without replacement
between 1 and
% 'balls', i.e. a random lotto sequence
% INPUT PARAMETERS
% draws: # of balls drawn (in norwegian lotto this is 7)
% balls: # of balls, i.e. # of possible numbers (in norwegian
lotto this is 34)
% rows: # of lottorows (in norwegian lotto this is normally 10)
% OUTPUT PARAMETERS
% lottonumbers: a matrix with 'rows' rows, where the rows are the
% lotto-combinations you play
lottonumbers = zeros(rows,draws);
for i=1:rows
temp_combination = randsample(balls,draws,'false');
% draw 'draws' integers between 1 and 'balls'
lottonumbers(i,:) = sort(temp_combination);
% sort the drawn lottosequence in ascending order
end
using function above:
function thrtyfoinrow=drawlotto(v)
thrtyfoinrow=0;
draw_lottonumbers(7,34,v)
winner=rand(1,7);
winner=ceil(winner);
for i=1:v
if winner==lottonumbers(i,:)
for j=1:v
if winner(j)==34
thrtyfoinrow=thrtyfoinrow+1;
end
end
end
end
I get error in
if winner==lottonumbers(i,:)
I guess my comparing is bad?
  2 Kommentare
Oleg Komarov
Oleg Komarov am 8 Mai 2012
What error do you get?
Daniel Shub
Daniel Shub am 8 Mai 2012
My guess is the error is related to the fact that winner is 1x7 and not a scalar.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Daniel Shub
Daniel Shub am 8 Mai 2012
You might want to use
doc isequal
or
all(winner == lottonumber(i,:))

Kategorien

Mehr zu Creating and Concatenating Matrices 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!

Translated by