[re] 공식좀 만들어줘~~

2004.05.23 23:45

단장 조회 수:1890 추천:275

위에 unknown분... 코드가 너무 어렵네요...-_-; 전 무슨소린지 전혀 모르겠음...
전 이렇게 해볼랍니다. 아마 장로는 PHP 에쓰겠지만...
    
bool DetermineStraight(int nNumber)
{
    char pBuffer[10]; // 자릿수의 최대값은 123456789 로서 문자열끝 NULL쳐도 10자리가 최대.
    itoa(nNumber, reinterpret_cast<char*>(pBuffer), 10) // nNumber로 받은 정수 숫자를 문자열로 변환. PHP는 자동이겠지만.

    int nCount = 0;
    char cStartChr = pBuffer[0]; //숫자의 첫글자를 캐릭터형태로 보관.
    while(pBuffer[nCount] != NULL) //문자열의 끝은 NULL로 끝나므로... 문자끝까지 스캔하는것.
    {
        if(cStartChr == (pBuffer[++nCount] - 1)) ++cStartChr; //cStartChr에는 문자열 첫글자
        // 들어 있으니깐... pBuffer[1] 즉 문자열의 두번째글자의 아스키코드에 1뺀거하고
        // cStartChr이 같으면 연속된숫자임... 단 이건 9 다음에 0이오는경우는 쓰지못함.
        // 그거 고려해야할거면 코드 수정 -_-;
        //어쨌든 다음글자가 조건에 맞으면 cStartChr을 1증가시킴(당연히 뒷글자를 위해서임.)
        else break;
    }

    if(strlen(pBuffer) == nCount) return true; //문자열 끝까지 스캔이 되었으면 true... 왜냐면
    //중간에 break가 한번도 안걸렸으니깐...
    else return false; // 문자열끝까지 스캔못하고 브레끼 걸렸을땐 false 리턴.
}

//2004.05.24 수정. 밑에건 수정된 풀 소스입니다... 라인수를 더 줄이려고 노력...
//만약 이 소스의 라인을 한줄씩 줄일수 있을때마다(공백지우기 인정안됨!)
//내가 밥 한끼씩 쏘겠음.

#include <iostream>

bool DetermineStraight(int nNumber)
{
    char pBuffer[10];
    itoa(nNumber, reinterpret_cast<char*>(pBuffer), 10);
    int n = 0;
    char cStartChr = pBuffer[0];
    while(pBuffer[++n] != NULL) if(++cStartChr != pBuffer[n]) return false;
    return true;
}

//For문을 사용하면 한줄 더 줄일수 있습니다만... 권장할방법은 못됩니다... Strlen을 For루프마다 호출하기 때문이죠.

int _tmain(int argc, _TCHAR* argv[])
{
        int nNumero = 12345578;

        if(DetermineStraight(nNumero)) std::cout << "스트레잇또!" << std::endl;
        else std::cout << "집에가라!" << std::endl;
        return 0;
}

댓글 6

파일 첨부

여기에 파일을 끌어 놓거나 파일 첨부 버튼을 클릭하세요.

파일 크기 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )
 
목록
번호 제목 글쓴이 날짜 조회 수
859 내 Applied Cryptography 책 빌려간사람 [2] [1] 단장 2004.06.25 1942
858 기타 사부러쑴 [1] megaella 2004.06.24 1979
857 누리형은 전화도 안되고 연락이 안되네 [6] megaella 2004.06.24 1999
856 집에 남는 컴터 있으면 파세요 [7] megaella 2004.06.21 1937
855 최근근황 [5] saturnman 2004.06.16 1975
854 핸드폰 패러디 [7] [1] file 단장 2004.06.16 2003
853 훗훗 니콘도 나왔다. [3] file 단장 2004.06.12 2003
852 장로기타 좋네 [3] megaella 2004.06.11 2026
851 우리 할때 됬자나? [17] [18] megaella 2004.06.08 1977
850 공항에 비교한 운영체제 [2] [18] 단장 2004.06.08 1895
849 존 카멕은 왜 대단한가. [17] 단장 2004.06.08 1943
848 국민연금 상담직원 '양심고백' 전문 [3] [23] 단장 2004.06.03 1948
847 최근근황 ㅡㅡ; 아아아악 [3] [20] 누랭 2004.06.01 1879
846 누구 선반가공하는데 아는사람~~~ [5] [40] 단장 2004.05.28 3780
845 poz x301질르다 [11] [33] 안선생 2004.05.28 2165
844 ... 현재 이슈가 되고있는 양심적 병역거부에 대한 한 독자의 투고 [6] [19] file 서린언니 2004.05.27 2209
843 RC란 이런거시다!!! 단장의 펀카... [7] [20] 단장 2004.05.26 12773
842 현재 프라이데 F.C 2004년 방송중~으악 [2] [20] file 해돌 2004.05.25 1950
841 공식좀 만들어줘~~ [5] [26] 장로 2004.05.22 2151
» [re] 공식좀 만들어줘~~ [6] [6] 단장 2004.05.23 1890