Sum of two numbers without using arithmetic operators

Ex:
int a=10;
int b=10;
int sum=a+b;
without using "+" operator calculate sum

Questions by meda_reddy

Editorial / Best Answer

jintojos  

  • Member Since May-2008 | Jul 17th, 2008


void main()
 {
          int a=10,b=20;
          while(b--) a++;
           printf("Sum is :%d",a);  
 }

Showing Answers 1 - 18 of 18 Answers

ceren6

  • Jul 18th, 2008
 

#include
int main()
{
unsigned int t = 0xffffffff;
unsigned int z = 1;
int a = 10, b = 10, sum = 0, r = 0;
while (t) {
int t1, t2;
t1 = a & 0x00000001;
t2 = b & 0x00000001;
if ((t1 ^ t2 ^ r) == 1) {
if (t1 == 1 && t2 == 1 && r == 1)
r = 1;
else
r = 0;
sum = sum | z;
} else {
if (t1 == 0 && t2 == 0 && r == 0)
r = 0;
else
r = 1;
}
a >>= 1;
b >>= 1;
z <<= 1;
t >>= 1;
}
printf("sum: %dn", sum);
return 0;
}

  Was this answer useful?  Yes

ceren6

  • Jul 21st, 2008
 

Arithmetic operators
Operator NameSyntaxOverloadableIncluded in C
Unary Plus +a Yes Yes
Addition (Sum) a + b Yes Yes
Prefix Increment ++a Yes Yes
Postfix Increment a++ Yes Yes
Assignment by Addition a += b Yes Yes
Unary Minus (Negation) -a Yes Yes
Subtraction (Difference) a - b Yes Yes
Prefix Decrement --a Yes Yes
Postfix Decrement a-- Yes Yes
Assignment by Subtraction a -= b Yes Yes
Multiplication (Product) a * b Yes Yes
Assignment by Multiplication a *= b Yes Yes
Division (Quotient) a / b Yes Yes
Assignment by Division a /= b Yes Yes
Modulus (Remainder) a % b Yes Yes
Assignment by Modulus a %= b Yes Yes

ratnapaul

  • Jul 18th, 2009
 

Code
  1. main()<br />{<br />cout<<"Enter the numbers to be added";<br /> int a,b,x,y;<br /> cin>>a>>b;<br /> <br />do{<br /> x=a&b;<br /> y=a^b;<br /> x=a<<1;<br /> y=b;<br />}while(a);<br />cotu<<"The sum is:"<<y;<br />}

  Was this answer useful?  Yes

luckypavan

  • Oct 1st, 2010
 

Code
  1. #include<stdio.h>

  2. main()

  3. {

  4.     int a, b, c, d, sum;

  5.     printf("n Please enter a,b values:");

  6.     scanf("%d %d", &a, &b);

  7.     if (b > a) {

  8.         c = b - a;

  9.     } else {

  10.         c = a - b;              // using minus operator

  11.     }

  12.     d = square(b) - square(a);  // using square function and - minus operator

  13.     sum = d / c;                // using division operator

  14.     printf("The sum of a and b is:%d", sum);

  15.     return 0;

  16. }

  Was this answer useful?  Yes

Code
  1. #include<stdio.h>

  2.  

  3. int result = 0X0;

  4. int a, b, C = 0X0, aB, bB;

  5.  

  6. int main()

  7. {

  8.     int val = 0X1;

  9.  

  10.     scanf("%d%d", &a, &b);

  11.     while (val) {

  12.         aB = !!(a & val);

  13.         bB = !!(b & val);

  14.  

  15.         if (aB ^ bB ^ C)

  16.             result |= val;

  17.  

  18.         C = (aB & bB) | ((aB ^ bB) & C);

  19.  

  20.         val <<= 1;

  21.     }

  22.     printf("%d", result);

  23.  

  24.     return 0;

  25. }

  Was this answer useful?  Yes

rome2all

  • Aug 16th, 2011
 

Code
  1. class Test {

  2.     public static void main(String ... z) {

  3.         System.out.println(4 || 8);     //use logical or symbol u can add it

  4. }}

  Was this answer useful?  Yes

sravan

  • Aug 20th, 2011
 

Code
  1.          #include<iostream.h>

  2.          void main()

  3.  {

  4.       int i=20,j=30,m,n;

  5.                          m=i,n=j;

  6. if(i<j)

  7. {

  8.           for(i=1;i<=m;i++)

  9.                         j++;

  10.          cout<<j;

  11. }

  12. else

  13. {

  14.         for(j=1;j<=n;j++)

  15.                  i++;

  16.   cout<<i;

  17. }

  18.  }

  Was this answer useful?  Yes

mukesh kumar

  • Mar 25th, 2012
 

Code
  1. int main(){

  2. int a,b;

  3. printf("Enter the two numbers:

  4. ");

  5.  

  6. scanf("%d",&a);

  7. scanf("%d",&b);

  8. printf("Sum is: %d",add(a,b));

  9. }

  Was this answer useful?  Yes

mahamad

  • Jun 14th, 2012
 

Code
  1. #include<stdio.h>

  2. #include<conio.h>

  3. main()

  4. {

  5.     int a=20,b=10,c;

  6.     clrscr();

  7.     c=a-~b-1;             //it will change the sign of operator truly magic

  8.     printf("sum is %d",c);

  9.     getch();

  10.     return 0;

  11. }

  Was this answer useful?  Yes

And

  • Aug 28th, 2012
 

For two positive numbers:
int main(){
int a = 10;
int b = 10;
printf("%d",a ^ b | ((a & b)<< 1));
return 0;
}

  Was this answer useful?  Yes

Give your answer:

If you think the above answer is not correct, Please select a reason and add your answer below.

Answer Question

Click here to Login / Register your free account


 
Send   Reset

 

Related Answered Questions

 

Related Open Questions