**장제법** 또는 **긴 나눗셈**은 산술에서 손으로 수행할 수 있을 만큼 간단한 여러 자리의 수를 나누는 데에 적합한 표준 나눗셈 알고리즘이다. 장제법은 분할 문제를 보다 쉬운 하나의 단계로 세분화한다.

모든 나눗셈 문제에서와 같이 피제수(dividend)라고 부르는 하나의 숫자는 제수(divisor)라고 부르는 다른 숫자에 의해 나뉘어서 몫(quotient)이라는 결과를 낳는다. 그것은 하나의 간단한 단계를 수행하여 임의로 큰 수를 포함하는 계산을 수행할 수 있게 한다.

12세기 이후에 관련 알고리즘이 존재했지만

## 교육계
저렴한 계산기와 컴퓨터는 나눗셈 문제를 해결하는 가장 일반적인 방법이 되었는데 종이와 연필을 활용한 전통적인 수학적 연습 방법을 보여주는 교육 기회를 감소시켰다. 내부적으로 이러한 장치는 다양한 나눗셈 알고리즘 중 하나를 사용하며 그 중에서 더 빠른 것은 작업을 달성하기 위해 근사값과 곱셈에 의존한다. 미국에서는 전통적으로 4학년이나 5학년 시기에 도입되었는데 특히 장제법이 개혁 수학에 의해 학교 교과 과정에서 탈락하는 것을 목표로 삼고 있다.

## 방법
영어권 국가에서는 장제법을 활용하는 과정에서 나눗셈 빗금⟨/⟩ 또는 나눗셈 기호⟨÷⟩를 사용하지 않고 하나의 작품을 연출한다. 제수는 오른쪽 괄호⟨)⟩나 세로 수직선⟨|⟩으로 피제수와 분리되는데 피제수는 괄선에 의해 몫과 분리된다. 이러한 두 기호 간의 조합은 때로 장제법 기호 또는 분할 괄호로 알려져 있다. 이는 18세기에 왼쪽 괄호로 몫으로부터 피제수를 분리한 이전의 단일 선 표기법에서 발전되었다.

이 과정은 피제수의 왼쪽 끝 자리를 제수로 나누는 것부터 시작한다. 몫(정수로 반올림)은 결과의 첫 번째 자리가 되고 나머지는 계산되는데 이 단계는 뺄셈으로 표기되어 있다. 이러한 나머지 부분은 과정이 피제수의 다음 자리(나머지까지의 다음 자리 '내림'으로 표기)에 반복될 때 진행된다. 모든 숫자가 처리되고 나머지가 남지 않으면 과정이 완료된다.

아래에는 500을 4로 나눠서 125가 나오는 나눗셈을 나타내는 예가 나와 있다.
  (설명)
 4)500
  = 4)
 )
  = 8)
 )
  = 20)
 0 (20 - 20 = 0)

단계에 대한 자세한 설명은 다음과 같다.

만약 피제수가 부족한 상황일 때에 마지막으로 남은 것이 0이 아니라면 우리가 2가지 가능한 행동 방식이 존재할 것이다.

  
 4)127.00
  (12 ÷ 4 = 3)
 07 
  (7 ÷ 4 = 1 r 3) 
 3.0 (0과 소수점을 내림)
  
 20 (0을 추가로 내림)
  (5 &times; 4 = 20)
 0

이 예제에서 결과의 소수 부분은 단위 자릿수를 넘어 0을 피제수의 소수 부분인 "내림"하는 과정을 계속하여 계산된다. 또한 이 예제는 과정을 시작하는 과정에서 0을 생성하는 단계를 생략할 수 있음을 보여준다. 1번째 자릿수 1이 자릿수 4보다 작기 때문에 1번째 단계는 처음 두 자릿수 12에서 대신 수행한다. 마찬가지로 제수가 13이면 12 또는 1이 아니라 127에서 첫 번째 단계를 수행한다.

### 불변속성 및 정확성
과정 단계(위쪽)의 기본 표시는 결과가 정확함을 보장하는 "단계의 속성"보다는 "어떠한" 단계를 수행해야 하는지에 초점을 맞춘다. 프레젠테이션 과정에서의 약간의 변화는 더 많은 쓰기를 요구하며 우리는 단순히 인용구의 숫자를 업데이트하는 것이 아니라 우리가 변경하도록 요구하지만 이러한 단계들이 프로세스의 중간 지점에서 "q & times; m + r"의 평가를 허용함으로써 실제로 올바른 답을 도출하는 "왜"를 더 많이 보여줄 수 있다. 이것은 알고리즘의 파생에 사용되는 주요 속성을 보여준다 (아래쪽),.

구체적으로 우리는 위의 기본 절차를 수정하여 시공 중인 "몫"의 자릿수 뒤에 0을 적어도 1의 자리로 채우고 그러한 0을 분할 괄호 아래에 쓰는 숫자에 포함시키도록 한다.

이를 통해 우리는 ''q &times; m + r = n''과 모든 단계에서 불변량을 유지할 수 있다. 여기서 "q"는 부분 분할된 몫(분할 괄호 위쪽)이고, "r"은 부분 분할된 나머지(분할 괄호 아래쪽에 나와 있는 번호)이다. 처음에는 ''q=0''과 ''r=n''이 유지되기 때문에 이러한 속성은 처음에 유지된다. 이 프로세스는 각 단계에서 ''r''을 줄이고 ''q''를 증가시킨다. 우리가 몫 + 정수 나머지 형태로 답을 찾는다면 결국 ''r=m''이 될 때 중단된다.

위의 "500 ÷ 4" 예제를 다시 살펴보자.

  순으로 변경한다.)
 4)500
  = 400)
 ''이면 ''q&times;4+r = 500''이 된다.)
  = 80)
 ''이면 ''q&times;4+r = 500''이 된다.)
  = 20)
 0

### 여러 자리 구분 기호 예제
자릿수 구분 기호를 사용할 수 있다. 이 예제에서는 1,260,257을 37로 나눈다. 먼저 다음과 같이 문제가 설정된다.

 
 37)1260257

숫자 1,260,257의 자릿수는 37보다 크거나 같은 숫자가 발생할 때까지 계산된다. 그래서 1과 12는 37보다 적지만 126은 더 크다. 다음으로 126보다 작거나 같은 37의 최대 배수가 계산된다. 따라서 3 & times; 37 = 111  126이다. 다중적인 111은 126 아래에 기록되고 3은 해답이 나타나는 위쪽에 기록된다.

 
 37)1260257
 111

이 숫자가 어느 자리값 선에 입력되었는지 주의 깊게 기록한다. 몫의 3은 피제수 1,260,257의 6과 같은 선(1만 자리)에 속하며 이는 마지막 자리인 111과 같은 선이다. 그런 다음에 위쪽 선에서 111을 빼면서 오른쪽에 있는 모든 숫자를 무시한다.

 
 37)1260257
 
 15

다음으로 작은 피제수의 자리 값에서 나온 자릿수가 복사되어 결과 15에 추가된다.

 
 37)1260257
 
 150

과정 반복: 37의 최대 배수가 150보다 작거나 같은 값을 뺀다. 이 값은 148 = 4 & times; 37이므로 다음 자릿수로 위에 4를 추가한다. 뺄샘 결과는 피제수에서 추출한 다른 숫자로 확장된다.

 
 37)1260257
 
 150
 
 22

37이 22보다 작거나 같은 최대 배수는 0 & 곱; 37 = 0이다. 22에서 0을 빼면 22가 주어지므로 종종 뺄셈 단계를 쓰지 않는다. 그 대신 피제수에서 다른 숫자를 빼면 된다.

 
 37)1260257
 
 150
 
 225

37이 마지막 선을 정확히 나눌 때까지 과정이 반복된다.

 
 37)1260257
 
 150
 
 225
 
 37

### 혼합 모드 장제법
십진수 이외의 통화(예: 1971년 이전의 영국 파운드 스털링 시스템) 및 측정(예: 상형) 과정에서는 **혼합 모드**를 사용해야 한다. 50마일 600야드를 37개 조각으로 나누는 것을 고려한다.

 mi - yd - ft - in
 
 37) 50 - 600 - 0 - 0
 
 13 23480 66 348
 
 22880 128  15
 ===== 
 170 
 
 
 66
 

4개의 기둥 각각이 차례대로 작업한다. 마일부터 시작하면 50/37 = 1 나머지 13이라는 등식이 나온다. 더 이상 분할이 불가능하므로 마일을 야드로 변환하기 위해 1,760의 긴 곱셈을 수행한다. 결과는 22,880야드이다. 이것을 야드 기둥의 맨 위까지 옮겨서 피제수 600야드에 23,480을 더한다. 23,480 / 37의 장제법은 현재 634의 나머지 22를 산출하고 정상적으로 진행된다. 나머지는 3을 곱해 몫을 얻고 몫의 기둥까지 옮겨진다. 몫의 장제법은 1의 나머지를 29로 주고 그 다음에 12를 곱하면 348인치가 된다. 긴 편차는 계속되며 마지막으로 남은 15인치는 결과 줄에 표시된다.

### 소수점 결과 해석
몫이 정수가 아니고 나눗셈 과정이 소수점 이상으로 확장되면 다음 두 가지 중 하나가 발생할 수 있다.

## 임의 베이스 알고리즘
모든 자연수 의 자릿수 및 기준 값은 다음과 같다.
에서 반복한다.

각각의 반복문 이 되고 모든 값은 자연수가 된다. 우리는 다음과 같이 시작한다.

맨 처음 의 자릿수가 된다.

반복할 때마다 세 가지 방정식이 참이다.
그런 것은 에 달하는 단 하나의 공식만이 존재한다.

**
나머지  의 정의에 따라
불평등한 왼쪽을 위해, 우리는 가장 큰 를 선택한다.
만약 가 존재한다. 따라서
왜냐하면 가 존재한다고 가정한다. 따라서
이것은 가장 작은 임을 의미한다.
그것은 정확히 불평등한 왼쪽과 같다. 따라서 의 존재와 독특함을 증명했다.

마지막 몫은 이다.

### 예제
십진법에서 위와 같은 예를 따라 를 사용한다.

따라서 이다.

십육진법에서 를 사용한다.

따라서 이다.

만약 누군가가 밑 에 대한 덧셈, 뺄셈, 곱셈 표가 없다면 이러한 알고리즘은 숫자가 소수점으로 변환되고 마지막에 밑 로 다시 변환되는 경우에도 여전히 작동한다. 예를 들어 위와 함께
과
함께 이 된다.

따라서 이 된다.

이러한 알고리즘은 위 문단과 같이 동일한 종류의 연필 및 종이 표기법을 사용하여 수행할 수 있다.

  r. 5
 12 ) f412df
 
 a1
 
 112
 
 4d
 
 5f
 
 5

### 유리수 몫
할당량이 정수로 제한되지 않으면  위치 표기법에 기초한 무한 반복 소수 확장이 된다.

### 이항 분할
이진법 체계의 계산은 더 간단하다. 왜냐하면 경로의 각 자릿수는 1 또는 0이기 때문인데 항등원 또는 흡수원 가운데 하나의 결과로 곱할 필요가 없기 때문이다.

만약 이것이 컴퓨터에서라면 10의 곱셈은 1이 왼쪽으로 비트 이동을 하는 현상을 나타낼 수 있는데 

예를 들어 를 사용한다.

따라서 이다.

### 성과
각 반복에서 가장 많은 시간이 걸리는 작업은 을 취한다.

## 일반화

### 유리수
정수의 장제법은 유리수이기만 하면 비정수 피제수를 포함하도록 쉽게 확장될 수 있다. 이는 모든 유리수에는 반복적인 순환소수가 있기 때문이다. 또한 이 절차는 유한하거나 종단하는 십진법 확장(즉 소수 분수)을 갖는 제수를 포함하도록 확장될 수 있다. 이러한 절차에는 ''a''&nbsp;÷&nbsp;''b'' = (''ca'')&nbsp;÷&nbsp;(''cb'')&nbsp;–라는 사실을 이용하여 새로운 제수가 정수가 되도록 제수와 피제수에 10의 적절한 거듭제곱을 곱한 다음에 위와 같이 진행한다.

### 다항식
다항식 장제법이라고 부르는 장제법의 일반화된 버전은 다항식을 나누는 데에도 사용된다(때로는 조립제법이라고 부르는 버전을 사용하기도 한다).