On Jun 28, 9:02 pm, Dave <dave_and_da...@juno.com> 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 <ankit.mahend...@gmail.com> 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 algoge...@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to