# Division without using ‘/’ operator

Given two numbers, divide one from other without using ‘/’ operator.
Examples :

```Input : num1 = 13, num2 = 2
Output : 6

Input : num1 = 14, num2 = -2
Output : -7

Input : num1 = -11, num2 = 3
Output : -3

Input : num1 = 10, num2 = 10
Output : 1

Input : num1 = -6, num2 = -2
Output : 3

Input : num1 = 0, num2 = 5
Output : 0```

In order to perform division operation without using ‘/’ operator we followed the approach, in which we count the number of successful or complete number of subtraction of num2 from num1. Where num1 is the number to be divided and num2 is the number from which we have to divide num1.

## C++

 `// CPP program to divide a number by other ` `// without using / operator ` `#include ` `using` `namespace` `std; ` ` `  `// Function to find division without using  ` `// '/' operator ` `int` `division(``int` `num1, ``int` `num2) ` `{ ` `   ``if` `(num1 == 0) ` `       ``return` `0; ` `   ``if` `(num2 == 0) ` `     ``return` `INT_MAX; ` ` `  `   ``bool` `negResult = ``false``; ` ` `  `   ``// Handling negative numbers ` `   ``if` `(num1 < 0) ` `   ``{ ` `       ``num1 = -num1 ; ` `       ``if` `(num2 < 0) ` `           ``num2 = - num2 ;  ` `       ``else` `           ``negResult = ``true``; ` `   ``} ` `   ``else` `if` `(num2 < 0) ` `   ``{ ` `       ``num2 = - num2 ; ` `       ``negResult = ``true``;  ` `   ``} ` ` `  `   ``// if num1 is greater than equal to num2 ` `   ``// subtract num2 from num1 and increase ` `   ``// quotient by one. ` `   ``int` `quotient = 0; ` `   ``while` `(num1 >= num2) ` `   ``{ ` `       ``num1 = num1 - num2 ; ` `       ``quotient++ ; ` `   ``} ` ` `  `   ``// checking if neg equals to 1 then making ` `   ``// quotient negative  ` `   ``if` `(negResult) ` `        ``quotient = - quotient ; ` `   ``return` `quotient ; ` `} ` ` `  `// Driver program ` `int` `main() ` `{ ` `    ``int` `num1 = 13, num2 = 2 ; ` `    ``cout << division(num1, num2); ; ` `    ``return` `0; ` `} `

## Java

 `// Java program to divide a number by other ` `// without using / operator ` `import` `java.io.*; ` ` `  `class` `GFG  ` `{ ` `    ``// Function to find division without using  ` `    ``// '/' operator ` `    ``static` `int` `division(``int` `num1, ``int` `num2) ` `    ``{ ` `        ``if` `(num1 == ``0``) ` `            ``return` `0``; ` `        ``if` `(num2 == ``0``) ` `            ``return` `Integer.MAX_VALUE; ` `         `  `        ``boolean` `negResult = ``false``; ` `         `  `        ``// Handling negative numbers ` `        ``if` `(num1 < ``0``) ` `        ``{ ` `            ``num1 = -num1 ; ` `            ``if` `(num2 < ``0``) ` `                ``num2 = - num2 ;  ` `            ``else` `                ``negResult = ``true``; ` `        ``} ` `        ``else` `if` `(num2 < ``0``) ` `        ``{ ` `            ``num2 = - num2 ; ` `            ``negResult = ``true``;  ` `        ``} ` `         `  `        ``// if num1 is greater than equal to num2 ` `        ``// subtract num2 from num1 and increase ` `        ``// quotient by one. ` `        ``int` `quotient = ``0``; ` `        ``while` `(num1 >= num2) ` `        ``{ ` `            ``num1 = num1 - num2 ; ` `            ``quotient++ ; ` `        ``} ` `         `  `        ``// checking if neg equals to 1 then making ` `        ``// quotient negative  ` `        ``if` `(negResult) ` `                ``quotient = - quotient ; ` `        ``return` `quotient ; ` `    ``} ` `     `  `    ``// Driver program ` `    ``public` `static` `void` `main (String[] args)  ` `    ``{ ` `        ``int` `num1 = ``13``, num2 = ``2` `; ` `        ``System.out.println( division(num1, num2));  ` `             `  `    ``} ` `} ` ` `  `// This code is contributed by vt_m. `

## Python3

 `# Python3 program to divide a number  ` `# by other without using / operator ` ` `  `# Function to find division without   ` `# using '/' operator ` `def` `division(num1, num2): ` `     `  `    ``if` `(num1 ``=``=` `0``): ``return` `0` `    ``if` `(num2 ``=``=` `0``): ``return` `INT_MAX ` `     `  `    ``negResult ``=` `0` `     `  `    ``# Handling negative numbers ` `    ``if` `(num1 < ``0``): ` `        ``num1 ``=` `-` `num1 ` `         `  `        ``if` `(num2 < ``0``): ` `            ``num2 ``=` `-` `num2  ` `        ``else``: ` `            ``negResult ``=` `true ` `                 `  `    ``elif` `(num2 < ``0``): ` `        ``num2 ``=` `-` `num2  ` `        ``negResult ``=` `true ` `     `  `    ``# if num1 is greater than equal to num2 ` `    ``# subtract num2 from num1 and increase ` `    ``# quotient by one. ` `    ``quotient ``=` `0` ` `  `    ``while` `(num1 >``=` `num2): ` `        ``num1 ``=` `num1 ``-` `num2  ` `        ``quotient ``+``=` `1` `     `  `    ``# checking if neg equals to 1 then  ` `    ``# making quotient negative  ` `    ``if` `(negResult): ` `            ``quotient ``=` `-` `quotient  ` `    ``return` `quotient  ` ` `  `# Driver program ` `num1 ``=` `13``; num2 ``=` `2` `print``(division(num1, num2)) ` ` `  `# This code is contributed by Ajit. `

## C#

 `// C# program to divide a number by other ` `// without using / operator ` `using` `System; ` ` `  `class` `GFG  ` `{ ` `    ``// Function to find division without  ` `    ``// using '/' operator ` `    ``static` `int` `division(``int` `num1, ``int` `num2) ` `    ``{ ` `        ``if` `(num1 == 0) ` `            ``return` `0; ` `        ``if` `(num2 == 0) ` `            ``return` `int``.MaxValue; ` `         `  `        ``bool` `negResult = ``false``; ` `         `  `        ``// Handling negative numbers ` `        ``if` `(num1 < 0) ` `        ``{ ` `            ``num1 = -num1 ; ` `            ``if` `(num2 < 0) ` `                ``num2 = - num2 ;  ` `            ``else` `                ``negResult = ``true``; ` `        ``} ` `        ``else` `if` `(num2 < 0) ` `        ``{ ` `            ``num2 = - num2 ; ` `            ``negResult = ``true``;  ` `        ``} ` `         `  `        ``// if num1 is greater than equal to num2 ` `        ``// subtract num2 from num1 and increase ` `        ``// quotient by one. ` `        ``int` `quotient = 0; ` `        ``while` `(num1 >= num2) ` `        ``{ ` `            ``num1 = num1 - num2 ; ` `            ``quotient++ ; ` `        ``} ` `         `  `        ``// checking if neg equals to 1 then making ` `        ``// quotient negative  ` `        ``if` `(negResult) ` `                ``quotient = - quotient ; ` `        ``return` `quotient ; ` `    ``} ` `     `  `    ``// Driver Code ` `    ``public` `static` `void` `Main ()  ` `    ``{ ` `        ``int` `num1 = 13, num2 = 2 ; ` `        ``Console.Write( division(num1, num2));  ` `             `  `    ``} ` `} ` ` `  `// This code is contributed by nitin mittal. `

## PHP

 `= ``\$num2``) ` `    ``{ ` `        ``\$num1` `= ``\$num1` `- ``\$num2` `; ` `        ``\$quotient``++ ; ` `    ``} ` `     `  `    ``// checking if neg equals to 1 then making ` `    ``// quotient negative  ` `    ``if` `(``\$negResult``) ` `            ``\$quotient` `= - ``\$quotient` `; ` `    ``return` `\$quotient` `; ` `} ` ` `  `// Driver program ` `\$num1` `= 13; ``\$num2` `= 2 ; ` `echo` `division(``\$num1``, ``\$num2``) ; ` `     `  `// This code is contributed by ajit ` `?> `

## Javascript

 ` `

Output

`6`

Time Complexity: O(num1/num2)
Auxiliary Space: O(1), As constant extra space is used.