◦ 간단한 정렬함수(혹은 랜덤함수) 하나로 며칠을 끙끙거렸다면 믿어지나요?
바로 Rhea君이 그랬습니다... .
미치고 환장하겠습니다.
머리가 썩었나 봅니다. STL 못쓴다는 제약 하나만으로 중학생 수준도 미달되어버리는군요. ㅠㅠ
아니면 좌측뇌와 우측뇌를 동시에 작동시키니 혼란이 오는지도 모르겠습니다.
작곡과 프로그래밍을 동시에 하는 ZUN씨의 경우가 궁금하네요... . 작곡도 프로그래밍과 같은 뇌를 사용하는 것일까요?
어쨌던 해당 정렬 함수는 방금 완성했는데... goto문을 사용하는 사례와 사용하지 않는 사례를 만들게 되었습니다.
goto문을 안쓰기 위해(사실 쓰면 안될 이유는 없습니다만), 그리고 다익스트라의 증명에 의해, 그냥 순환문을 사용할 것입니다.
그러나 누군가, "goto문을 써서 코드가 깔끔해지는 사례"를 묻는다면 이 몇줄의 함수를 보여드리고 싶네요.
//
// 랜덤소트 random sort
// goto 문 사용사례
//
for(int iTemp = 0; iTemp < iTotalCount; iTemp++)
{
restart:
int iNum = rand() % iTotalCount;
for(int a=0; a < iTemp; a++)
{
if(iNum == TempArray[a])
goto restart;
}
TempArray[iTemp] = iNum;
}
// 랜덤소트 random sort
// goto 문 사용사례
//
for(int iTemp = 0; iTemp < iTotalCount; iTemp++)
{
restart:
int iNum = rand() % iTotalCount;
for(int a=0; a < iTemp; a++)
{
if(iNum == TempArray[a])
goto restart;
}
TempArray[iTemp] = iNum;
}
◦ PC에서 코딩하고 맥으로 옮기는데 이 블로그를 이용하고 있습니다.
글을 비공개로 해놓고 코드를 옮기니 무척 편리하군요.
그래도 더 편한 어떤 방법이 없을까요?




