-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDivideTwoIntegers.py
More file actions
51 lines (44 loc) · 878 Bytes
/
DivideTwoIntegers.py
File metadata and controls
51 lines (44 loc) · 878 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
dividend = -2147483648
divisor = -1
#-2147483648
#-2147483648
#-1
def getresult(divisor,dividend):
if divisor>dividend:
return (0)
initDiv=divisor
#initDividend=dividend
result=1
tmp=divisor
divisor+=divisor
while divisor<=dividend:
tmp=divisor
result+=result
divisor+=divisor
divisor=tmp
if dividend>divisor:
result=result+getresult(initDiv,dividend-divisor)
return result
else:
return result
isp=True
if divisor<0:
isp=False
divisor=divisor*-1
if dividend<0:
if isp:
isp=False
else:
isp=True
dividend=dividend*-1
#result = 0
#if divisor>dividend:
# print (result)
#else:
result = getresult(divisor,dividend)
if not isp:
result=result*-1
if result<-2147483648 or result>2147483647:
print (2147483647)
else:
print (result)