C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[7600] 이런 방법도 있슴당.ㅋㅋ
홍지곤 [] 908 읽음    2003-08-06 22:07
#define    MAX    7 //최대 7로 한당.

/*---------------------------------
1      2      3      4      5       6     7
24    25    26    27    28    29    8
23    40    41    42    43    30    9
22    39    48    49    44    31    10
21    38    47    46    45    32    11
20    37    36    35    34    33    12
19    18    17    16    15    14    13
----------------------------------*/

  int matix[MAX][MAX];
  /* 행렬 변수 */
  int col=0, row=0;   //row -> 아래로(열)  col -> 옆으로(행)
  int incre=1; //1부터 시작
  int line=0;
  int size=MAX-1; //7-1 = 6
  int init;

  while(incre<MAX*MAX) //1~49까정
  {
    switch(line%4) //0 1 2 3 //% -> 나눗셈(나머지 값으로 case 돌린다.)
    {
      case 0:
        for(init=col;col<size;col++)   //오른쪽으로 행의 값 증가
        {
          matix[row][col]=incre++;    //[0][0] -> [0][1]  ----> [0][6] incre 01~07까지 증가
        }
        break;
      case 1:
        for(init=row;row<size;row++)   //아래로 열의 값 증가
        {
          matix[row][col]=incre++;     //[0][6] -> [1][6]  ----> [6][6] incre 08~13까지 증가
        }
        break;
      case 2:
        for(col;col>MAX-size-1;col--) //왼쪽으로 행의 값 감소
        {
          matix[row][col]=incre++;    //[6][6] -> [6][5] ----> [6][0] incre 14~19까지 증가
        }
        break;
      case 3:
        for(row;row>MAX-size;row--)  //위로 열의 값 감소
        {       
          matix[row][col]=incre++;    //[6][0] -> [5][0] ----> [1][0] incre 20~24까지 증가
        }
        size--;  //6-1 = 5          //안쪽으로 도는 구조라 하나씩 감소 시킨다.
        break;
    }
    line++;  //오른쪽-아래로-왼쪽-위로 계속 돌 수 있게 처리하기 위해 값을 넣는다.
  }

  /*멘마지막 중간에 가장 큰 수*/
  if(MAX/2)
    matix[MAX/2][MAX/2]=MAX*MAX;
  else
    matix[MAX/2][MAX/2-1]=MAX*MAX;
수야!╋ [sooya23]   2003-08-06 22:22 X
라인도 안맞추는 ㅡ_ㅡ 보기 힘들다 이느마
홍지곤 [hongjigon]   2003-08-07 09:44 X
줄 맞추기 힘드넹..ㅡ_ㅡ

+ -

관련 글 리스트
7599 재미있는 건의 [달팽이관] 수야!╋ 1026 2003/08/06
7936     늦었지만 울 동아리 후배가 한것~! utime->김성하 806 2003/10/15
7603     해미 버젼 정성훈.해미 763 2003/08/07
7601     Re:다른방법-헷갈리게 버전 방태윤 875 2003/08/06
7600     이런 방법도 있슴당.ㅋㅋ 홍지곤 908 2003/08/06
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.