Posts

Showing posts from January 20, 2013

Binary addition

Image
LIST OF PROGRAMS#include<stdio.h>
#include<conio.h>
void  main()
{
int a[100],a2[100],s[100],i=0,sum,carry=0,tmp=0,size;
clrscr();
printf("ENTER SIZE OF ARRAY ");
scanf("%d",&size);

printf("ENTER 1st NUMBER\n");
for(i=0;i<size;i++)
{ fflush(stdin);
scanf("%d",&a[i]);
if(a[i]<0||a[i]>1)
{
printf("WRONG INPUT");
}
}
printf("\nENTER 2nd NUBER");
for(i=0;i<size;i++)
{
scanf("%d",&a2[i]);
if(a[i]<0||a[i]>1)
{
printf("WRONG INPUT");
}
}


printf("\n 1st number entered is ");
for(i=0;i<size;i++)
printf("%d",a[i]);

printf("\n2nd number entered is ");
for(i=0;i<size;i++)
printf("%d",a2[i]);

for(i=size-1;i>=0;i--)
{ //main logic of the program
tmp=a[i]+a2[i]+carry;
if(tmp==0)
 {
sum=0;
carry=0;
 }
else if(tmp==1)
{
sum=1;
carry=0;
}
else if(tmp==2)
{
sum=0;
carry=1;
}
else
{
sum=1;
carry=1;
}
s[i+1]=sum;
}

s[0]=carry; //VERY IMPORTANT LINE

printf("\nSum Of Both The Numbers");