본문 바로가기

Native/C++

lotto KeyGen

[code]

// Clotto.h header ----------------------------------------------
class Clotto
{
protected:
    int max;
    int nMaxNum;

public:
    int num[7];    // lotto number
    int i;
    Clotto();
    void generater();
    void print_r();
    int *rtn();
};


// Clotto.cpp --------------------------------------------------
#include "lotto.h"
#include "Clotto.h"

Clotto::Clotto()
{
    max = 7;        // 돌릴값
    nMaxNum = 45;    // 최대값
}

void Clotto::generater()
{
    int j, rnd;
    bool reload;
    
    // init
    for(i=0;i<max;++i)
        num[i]=0;

    i = 0;    
    srand(time(NULL));    
    // -----------------------------------------------------
    // 로또 번호를 생성하게 한다
    // 1. 임의의 번호를 생성
    // 2. 번호를 1부터 시작하고
    // 3. 만약에 내용안에 같은 번호가 있으면 다시 돌린다.
    // -----------------------------------------------------
    do
    {
        reload = 1;
        rnd = rand()%nMaxNum;    // random seed;
        if(rnd > 0)
        {
            for(j=0;j<max;++j)
            {
                if(num[j]==rnd)
                    reload = 0;
            }

            if(reload == 1)
            {
                num[i]=rnd;

                //cout << &num[i] << endl;
                ++i;
            }
        }
    }
    while(i<max);
}

void Clotto::print_r()
{
    cout << "===================================" << endl;
    for(i=0;i<max;++i)
    {
        cout << num[i] << endl;
    }
    cout << "===================================" << endl;
}

int *Clotto::rtn()
{
    return num;
}

[/code]

'Native > C++' 카테고리의 다른 글

생성자(Constructor)  (0) 2013.10.02
Date And People  (0) 2013.10.02
첫 페이지 으흐흐  (0) 2013.10.02
웹서버에서 파일 다운로드  (0) 2013.10.02
생성자, 소멸자의 특징  (0) 2013.10.02