Advertisement
Abhisek92

division.py

May 15th, 2023
809
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.48 KB | None | 0 0
  1. def divide(a, b):
  2.     if a == 0:
  3.         return 0
  4.     if b == 1:
  5.         return a
  6.     if b == -1:
  7.         return -a
  8.  
  9.     negative = (a < 0) ^ (b < 0)
  10.  
  11.     # Convert a and b to positive
  12.     a = abs(a)
  13.     b = abs(b)
  14.  
  15.     quotient = 0
  16.     while a >= b:
  17.         shift = 0
  18.         while a >= (b << shift):
  19.             shift += 1
  20.         shift -= 1
  21.         quotient += (1 << shift)
  22.         a -= (b << shift)
  23.     if negative:
  24.         quotient = -quotient
  25.     return quotient
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement