728x90
반응형
% ============================================================================
% Octave 또는 Matlab에서 사용하면 된다. 다른 언어의 경우 수정이 필요하다.
% 프로그래밍에 관심이 있으신 분만 활용 바란다.
% ============================================================================
% octave : if - endif, while - endwhile, for-endfor ...
% 예상 수, 예상 번호만 남기고 나머지 삭제하면 된다.
data=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45];
[m n]=size(data);
tmp=1;
genN=10; % 만들어 낼 조합수
lotto=zeros(genN,6);
count=0;
while tmp~=0
address=randi(n,1,6);
address=sort(address);
if address(1)~=address(2) && address(1)~=address(3) && address(1)~=address(4) && address(1)~=address(5) && address(1)~=address(6)
if address(2)~=address(3) && address(2)~=address(4) && address(2)~=address(5) && address(2)~=address(6)
if address(3)~=address(4) && address(3)~=address(5) && address(3)~=address(6)
if address(4)~=address(5) && address(4)~=address(6) && address(5)~=address(6)
count=count+1;
lotto(count,1)=data(address(1));
lotto(count,2)=data(address(2));
lotto(count,3)=data(address(3));
lotto(count,4)=data(address(4));
lotto(count,5)=data(address(5));
lotto(count,6)=data(address(6));
if count>genN
tmp=0;
end
end
end
end
end
end
Matlab이나 Octave에서 lotto를 타이핑하고 엔터를 치면 결과를 얻을 수 있다.
728x90
반응형
'Programming > Matlab, Octave, Scilab' 카테고리의 다른 글
[Matlab] Serial Port Control (0) | 2010.05.01 |
---|---|
[Matlab] mex GUIDE (0) | 2010.05.01 |
[Matlab/Octave] 로또 조합 자동 생성 프로그램 (0) | 2010.05.01 |
[Matlab/Octave] Programing for 8145060 of lotto combinations (0) | 2010.05.01 |
[Matlab/Octave] 가중치 함수(weight function) 만들기 (0) | 2010.05.01 |
댓글