비교하고 잘 사는, 다나와 : 가격비교 사이트

다나와 앱
다나와 앱 서비스 목록
다나와 APP
다나와 가격비교 No.1 가격비교사이트 다나와 앱으로
간편하게 최저가를 확인하세요.
- -
QR코드
빈 이미지
다나와 앱 서비스 목록 닫기

허접하나마 로또 번호 생성기 프로그램( C++ )

IP
2004.06.13. 00:08:20
조회 수
377
댓글 수
3

공유하기

레이어 닫기

지금 보는 페이지가 마음에 든다면
공유하기를 통해 지인에게 소개해 주세요.

로그인 유저에게는 공유 활동에 따라
다나와 포인트가 지급됩니다.

자세히 >

URL이 복사되었습니다.
원하는 곳에 붙여넣기(Ctrl+V)하세요.

레이어 닫기
심심할때 한번 짜본것입니다.
리눅스로 돌렸고 뭐 비주얼씨도 될겁니다.
확률상 정말 어렵게 번호를 선택하기로 하고 정말 좀 기다려야 됩니다만 그래도 빠른 컴이라면 조금 빨리 나올겁니다. 리눅스머신 펜3 800에서 거의 10초쯤 걸리는듯... 그래도 제대로 작동합니다만 제가 이걸로 로또를 해서 몇번 당첨됐냐하면.......... 빵이올시다... ㅜ.ㅜ 로또, 정말 쪼또 안맞데요...

#include
#include
#include

unsigned long gCount = 0;
unsigned int devideNum = 8145060; // 요부분 맘대로 바꿔도 됩니다. 아무렇게나 쓴다는것이 요번호.

struct node{
node *prev, *next;
int value;
};

class link{
private:
node *first, *last;
public:
link();
~link();
void Add( int n );
void Delete( node *n);
void Display( node *t ){ printf("%d ", t->value); }
void ShowAll();
int Extract();
};

///// constructor
link::link()
{
first = new node();
last = new node();
first->prev = NULL;
first->next = last;
last->next = NULL;
last->prev = first;
first->value = last->value = 0;

srand( (unsigned)time( NULL ) );

for( int i=0;i<45;i++)
Add( i+1 ); // from 1 to 45
}

//// destructor
link::~link()
{
while( first->next != last ) Delete( first->next );
delete first;
delete last;
}

void link::ShowAll()
{
node *t;
t = first->next;
while( t != last ){ Display( t ); t = t->next; }
}

void link::Add( int n )
{
node *t = new node();
t->value = n;

t->prev = last->prev;
t->next = last;
last->prev->next = t;
last->prev = t;
}

void link::Delete( node *n )
{
n->prev->next = n->next;
n->next->prev = n->prev;
delete n;
}

int link::Extract()
{
node *t = first->next;
int i;

int targetNum = rand()%devideNum;

printf("targetNum = %dn", targetNum);

for(;;)
{
gCount++;
i = rand() % devideNum;
// 이부분, 정말이지 아주 어렵게 번호를 선택하라고 설정한것임... ^^
if( i == targetNum)
{
int x = t->value;
Delete( t );
return x;
}

t = t->next;
if( t == last ) t = first->next;
} //for
}

void main()
{
int i;
int flag = 0;
int result[6], t;
link *x = new link();
for( i = 0;i<6;i++)
result[i] = x->Extract();

do{
flag = 0;
for(i=0;i<5;i++)
{
if( result[i] > result[i+1])
{
t = result[i];
result[i] = result[i+1];
result[i+1] = t;
flag = 1;
}
}
}while( flag == 1);

printf("===============================================n");
for( i = 0;i<6;i++)
printf("%d ", result[i]);

printf("n");
printf("===============================================n");
printf("total Loop : %ldn", gCount);
delete x;
}// main

공감/비공감

공감/비공감안내도움말 보기
유용하고 재미있는 정보인가요?
공감이 된다면 공감 버튼을, 그렇지 않다면 비공감 버튼을 눌러 주세요!
공감이나 비공감을 선택 하는 경우 다나와 포인트를 적립해 드립니다. ※ 공감 버튼의 총 선택 횟수는 전체 공개입니다. 비공감 버튼의 선택 여부는 선택한 본인만 알 수 있습니다.
자유게시판 최신 글 전체 둘러보기
1/1
늦잠이네요, (2)
물컹물컹 포도알 (2)
1주년 출첵 ㅎㅎ (5)
비가 흩날리네요 (2)
습도 높고 흐린 날씨에 월요일이네요. (2)
비 소식이 있습니다. (4)
전국 흐리고 남부 제주 지방 비 (2)
새벽 3시 33분 분명 자야하는데.... (3)
질문있습니다 (1)
[주간 랭킹] 지난 주 다나와 주간활동 순위는 전주보다 2계단 올라 8위였습니다. (6)
[주간 랭킹] 5위 (8)
덥다더워
6월 1일 박스오피스 / 하이파이브 1위 탈환 (3)
매일 10시간 걷던 남자
BB탄 서바이벌 게임에 가져가면 욕 먹는다는 아이템 (1)
주말이 금방 지나가 버리네요. (3)
저녁메뉴는 비빔국수 (5)
평화로운 야장 치킨이군요. 저 사이에 앉고싶다 (6)
6월의 첫날이네요 (3)
부추전 부쳐 먹었습니다. (5)
이 시간 HOT 댓글!
1/4