On Jun 28, 9:02 pm, Dave <[email protected]> wrote:
> Given an integer n, this code replaces n with n+1 without using
> arithmetic operations:
>
> c = 1
> repeat
> d = n and c
> n = n xor c
> c = d left shifted by 1
> until c = 0
>
> Dave
>
> On Jun 28, 4:16 pm, ankit mahendru <[email protected]> wrote:
>
>
>
> > Q. Find the next number for a given number without using any arithmetic
> > operators(use bit operations)
This adds two numbers with roughly the same algorithm:
int add(int x, int y)
{
for (;;) {
int carry = (x & y) << 1;
x ^= y;
if (carry == 0) return x;
y = carry;
}
}
--
You received this message because you are subscribed to the Google Groups
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/algogeeks?hl=en.