이게 뭐하는 짓인지..

그놈의 달팽이가 뭐길래… irc에서 "함 풀어봐" 하시는 분이 계셔서 함 풀어봤습니다…

뭐, 일단 잘 돌아가는군요…

어디를 수정하면 좀 더 예쁜 소스가 될 수 있을까요? ㅋㅋ

[code:m1so1oav]#include <stdio.h>

int main(int argc, char* argv[])
{
int dim[30][30];
int i, j, k, count = 0;
int max;
if(argc > 1) {
if(atoi(argv[1]) > 30) {
printf("Usage : %s [line(under 30)]\n", argv[0]);
return(-1);
}
if(atoi(argv[1]) > 1) max = atoi(argv[1]); else max = 10;
}
k=max;
while(k>0) {
k–;
for(i=(max-1)-k;i<k;i++) dim[(max-1)-k][i] = count++;
for(i=(max-1)-k;i<k;i++) dim[i][k] = count++;
for(i=k;i>(max-1)-k;i–) dim[k][i] = count++;
for(i=k;i>(max-1)-k;i–) dim[i][(max-1)-k] = count++;
}
if(max % 2) dim[max/2][max/2]=count;

for(i=0;i<max;i++) {
for(j=0;j<max;j++) {
printf("%4d",dim[i][j]);
}
printf("\n");
}
return(0);
}[/code:m1so1oav]

갑자기… 외계의 언어가… -.-;;;

LED 가 똑똑~해 진건가? Smart LED ??? ㅋㅋㅋ

규칙이 어떻게 되나요? 저도 한 번 풀어보고 싶네요^^
제가 C언어를 배우던 책에도 달팽이 배열이 있었는데 약간 다른 것 같기도 하고…

[code:2lmf9gk8]#include <time.h>
#include <stdio.h>

int main(int argc, char* argv[])
{
char is_duplicate = 1;
int i, j, lotto[7];
srand((unsigned)time(NULL));
while(is_duplicate)
{
for(i=0;i<7;i++)
lotto[i]=(rand() % 45)+1;
is_duplicate=0;
for(i=0;i<7;i++)
for(j=0;j<7;j++) {
if(i==j) continue;
if(lotto[i]==lotto[j]) is_duplicate=1;
}
}
printf("This is numbers : %2d, %2d, %2d, %2d, %2d, %2d + %2d\n", lotto[0], lotto[1], lotto[2], lotto[3], lotto[4], lotto[5], lotto[6]);
return(0);
}
[/code:2lmf9gk8]이것도 함 해봤습니다…

[b:2lmf9gk8]주의 : 군대 재입대 하시는 꿈 꾸고 나서 긁으시기 바랍니다.[/b:2lmf9gk8]