Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / Java

Swap Two Numbers without using Temp Variable

5.00/5 (3 votes)
17 Feb 2012CPOL 20.1K  
That conclusion is definitely wrong. Your equation expanded equals: b = (a+b) - (a-b) = a+b - a + b = 2*bFor your example a=20, b=10b = (20+10) - (20-10) = (30) - (10) = 20b = 20 + 10 - 20 + 10 = 20A counter example to disprove this: a=75, b=88b = (75+88) - (75-88) =...
That conclusion is definitely wrong.

Your equation expanded equals:
b = (a+b) - (a-b) = a+b - a + b = 2*b

For your example a=20, b=10
b = (20+10) - (20-10) = (30) - (10) = 20
b = 20 + 10 - 20 + 10 = 20

A counter example to disprove this:
a=75, b=88

b = (75+88) - (75-88) = (163) - (-13) = 163 + 13 = 176

this equals the expanded algebraic expression :
b = (a+b) - (a-b) = a+b - a + b = 2*b
b = 75 + 88 - 75 + 88 = 88*2 = 176

It appears it was just coincidental that your example worked, not a mathematical truth. Good work trying to find a mathemagical short cut though.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)