차이점

이 페이지의 선택한 이전 버전과 현재 버전 사이의 차이점을 보여줍니다.

차이 보기로 연결

브레인퍽 [2011-09-05 05:47]
lifthrasiir 완전히 새로 썼음
브레인퍽 [2011-12-24 17:36] (현재)
lifthrasiir 태그 구체화
줄 227: 줄 227:
   * 배열을 겹쳐 놓는다. 이를테면, 두 배열이 하나는 2칸, 다른 하나는 3칸을 차지한다면 이를 한 원소에 5칸을 차지하는 하나의 배열로 처리해서 관리하는 것이다. (배열의 경계 또한 한 원소를 차지하기 때문에 두 배열의 길이가 항상 같아야 할 필요는 없다.) 만약 배열의 각 원소들이 충분히 단순하다면 이 쪽이 더 간편할 수 있다.   * 배열을 겹쳐 놓는다. 이를테면, 두 배열이 하나는 2칸, 다른 하나는 3칸을 차지한다면 이를 한 원소에 5칸을 차지하는 하나의 배열로 처리해서 관리하는 것이다. (배열의 경계 또한 한 원소를 차지하기 때문에 두 배열의 길이가 항상 같아야 할 필요는 없다.) 만약 배열의 각 원소들이 충분히 단순하다면 이 쪽이 더 간편할 수 있다.
  
-거의 모든 브레인퍽 프로그램은 다음 몇 가지 요소를 바탕으로 설명할 수 있다. 물론 복잡한 알고리즘의 경우 코드를 줄이기 위해서 조건문과 배열의 경계를 흐뜨러 놓는다거나 하는 꼼수를 많이 쓰기는 하지만((예를 들자면 [[http://esolangs.org/wiki/Brainfuck_algorithms#Divmod_algorithm|몫과 나머지를 함께 계산하는 코드]] ''[->-[>+>>]>[+[-<+>]>+>>]<<<<<]''의 안쪽 루프 두 개는 균형이 안 잡혀 있지만 실제로는 배열 연산이 아니라 두 개의 서로 반대되는 조건의 조건문을 합쳐 놓은 것이다. 그러니 어느 경우든 항상 루프 끝에서는 일정한 칸에 도달하게 된다.)) 개념은 크게 다르지 않다.+거의 모든 브레인퍽 프로그램은 지금까지 설명했던 요소들을 바탕으로 설명할 수 있다. 물론 복잡한 알고리즘의 경우 코드를 줄이기 위해서 조건문과 배열의 경계를 흐뜨러 놓는다거나 하는 꼼수를 많이 쓰기는 하지만((예를 들자면 [[http://esolangs.org/wiki/Brainfuck_algorithms#Divmod_algorithm|몫과 나머지를 함께 계산하는 코드]] ''%%[->-[>+>>]>[+[-<+>]>+>>]<<<<<]%%''의 안쪽 루프 두 개는 균형이 안 잡혀 있지만 실제로는 배열 연산이 아니라 두 개의 서로 반대되는 조건의 조건문을 합쳐 놓은 것이다. 그러니 어느 경우든 항상 루프 끝에서는 일정한 칸에 도달하게 된다.)) 개념은 크게 다르지 않다.
  
 ==== 주석 ==== ==== 주석 ====
줄 249: 줄 249:
   * [[http://esolangs.org/wiki/Brainfuck|Brainfuck]] ([[난해한프로그래밍언어위키]])   * [[http://esolangs.org/wiki/Brainfuck|Brainfuck]] ([[난해한프로그래밍언어위키]])
  
-{{tag>프로그래밍언어}}+{{tag>난해한프로그래밍언어}}

도쿠위키DokuWiki-custom(rev 9085d92e02)을 씁니다.
마지막 수정 2011-12-24 17:36 | 작성자 lifthrasiir