2010. 4. 26. 15:00 Programme
C언어 달팽이(나선)배열
컴퓨터 수업 과제. 과제 제출기한 종료에 맞추어 공개.
#include <stdio.h>
int main()
{
int main()
{
int i,j=1,k=1,l=1,n,a[19][19];
printf("n<19\?");scanf("%d", &n);
for(i=0;i<n*n;i++)
{
a[j-1][k-1]=i+1;
if(j==l&&k!=n-l+1)k++;
else if(j!=n-l+1&&k==n-l+1)j++;
else if(j==n-l+1&&k!=l)k--;
else j--;
if(j==k&&k==l){l++;j++;k++;};
}
for(j=0;j<n;j++)
{
for(k=0;k<n;k++)
{
printf("%4d", a[j][k]);
}
printf("\n");
}
return 0;
}
출력 결과
미니멀리즘은 진리. 그런데 해 놓은 것을 살펴보니까 좀 더 줄일 수 있을 것 같다. 구문 자체는 변하지 않겠지만.
'Programme' 카테고리의 다른 글
Reversible Computation (0) | 2013.10.29 |
---|---|
[C] Entering strings including <space> (0) | 2010.09.11 |
[C] Conway's Game of Life (4) | 2010.06.25 |
[C] Pseudorandom number generator (0) | 2010.06.14 |