F.C.O With C

write a program to convert decimal number into equivalent binary number system.

#include<stdio.h>
#include <math.h>

int decimal_binary(int n);
int main()

{
 
 int n;
        char c;
 printf("Instructions:\n");

 printf("Enter alphabet 'b' to convert decimal to binary.\n");
 scanf("%c",&c);

 if (c =='b' || c == 'B')
      
 {
 
     printf("Enter a decimal number: ");
     scanf("%d", &n);
 
            printf("%d in decimal = %d in binary", n, decimal_binary(n));
  
        }
 
 return 0;

}

int decimal_binary(int n) 

{
     int rem, i=1, binary=0;
 while (n!=0)
 
 {
    rem=n%2;
    n/=2;
    binary+=rem*i;
    i*=10;
 }

return binary;
                
}

/************************


Ouput:

#mber: 5
5 in decimal = 101


******************/






================================================================================================

* Write a program to convort decimal number into equivalent octal number system.

#include<stdio.h>
#include<conio.h>
#include<math.h>

int decimal(int n);
int main()

{
 int n;
 char c;
 clrscr();
 printf("Instruction : \n");
 printf("enter alphabet 'o' to covert decimal to octal. \n");

 scanf("%c",&c);

 if(c =='o'|| c =='O')
 {
  printf("enter an decimal number :");
  scanf("%d",&n);
  printf("%d decimal = %d in octal", n, decimal_octal(n));
 }

getch();

}

int decimal_octal(int n)

{
 int rem, i=1, octal=0;
 while(n!=0)

 {
  rem=n%8;
  n/=8;
  octal+=rem*i;
  i*=10;
 }
return(octal);
}





/***********************

output:

Instruction :
enter alphabet 'o' to covort decimal to octal.
o
enter an decimal number :32
32 decimal = 40 in octal


*************************************/

================================================================================================

* Write a program to convert decimal number into equivalent Hexa-decimal number system.

#include<stdio.h>
#include<conio.h>

void main()

{

 unsigned long dec;
 int a[20], c=0,i;

 clrscr();

 printf("\n Enter a Decimal no : ");
 scanf("%lu", & dec);
 printf("\n Hexadecimal no is : ", dec);
 while(dec>0)

 {

  a[c]=dec%16;
  dec=dec/16;
  c++;


 }

 for (i=c-1;i>=0;i--)

 {
  if(a[i]>=10)

   printf("%c", a[i]+55);

  else
   printf("%c", a[i]);

 }

getch();

}



/*******************

Output:

 Enter a Decimal no : 13

  Hexadecimal no is : D

 *************************/

================================================================================================

* Write a program to convert decimal number into equivalent Hexa-decimal number system.

#include<stdio.h>
#include<conio.h>

int main()

{

 long int binary,hexadecimal=0,j=1, remainder;
 clrscr();

 printf("Enter any number any binary : ");
 scanf("%ld",&binary);

 while(binary!=0)
 {
 remainder=binary%10;
 hexadecimal=hexadecimal+remainder*j;
 j=j*2;
 binary=binary/10;
 }

 printf("Equivalent hexadecimal value: %lX",hexadecimal);
 scanf("%dl", &binary);

 return 0;
 }


/***************************

Output:

Enter any number any binary : 111
Equivalent hexadecimal value: 7




***************************/

=================================================================================================================

* Write a program to convert octal number into equivalent Binary number system.

#include <stdio.h>
#include<conio.h>
#include <math.h>

int octal_binary(int n);
int main()

{
    int n;
    char c;
    clrscr();

    printf("Instructions:\n");
    printf(" Enter alphabet 'b' to convert octal to binary.\n");
    scanf("%c",&c);

    if ( c=='b' || c=='B')


    {
 printf("Enter a octal number: ");
 scanf("%d",&n);
 printf("%d in octal = %d in binary",n, octal_binary(n));
 scanf("%d", &n);
    }

    return 0;

}

 int octal_binary(int n)
{
 int binary=0,decimal=0, i=0;
 while (n!=0)
 {
  decimal+=(n%10)*pow(8,i);
  ++i;
  n/=10;
 }

 i=1;

 while(decimal!=0)


 {

  binary+=(decimal%2)*i;
  decimal/=2;
  i*=10;
 }

  return binary;

}


/*********************************

Output:

Instructions:
 Enter alphabet 'b' to convert octal to binary.
 b
 Enter a octal number: 6
 6 in octal = 110 in binary


**************************************/

==========================================================================================================================

* Write a program to convert binary number into octal.


#include <stdio.h>
#include <math.h>

int binary_octal(int n);

int main()

{
     int n;
 char c;

        printf("Instructions:\n");
 printf("1. Enter alphabet 'o' to convert binary to octal.\n");

 scanf("%c",&c);

 if ( c=='o' || c=='O')

        {
 
     printf("Enter a binary number: ");
     scanf("%d",&n);
     printf("%d in binary = %d in octal", n, binary_octal(n));
 
 }

return 0;
 
}

int binary_octal(int n)  /* Function to convert binary to octal. */

{

 int octal=0, decimal=0, i=0;
 while(n!=0)
 
 {
  decimal+=(n%10)*pow(2,i);
  ++i;
  n/=10;
        }

/*At this point, the decimal variable contains corresponding decimal value of binary number. */

  i=1;
 while (decimal!=0)
 
 { 
  octal+=(decimal%8)*i;               decimal/=8;
  i*=10;
 }
return octal;

}


/*******************************
Instructions:
1. Enter alphabet 'o' to convert binary to octal.
o
Enter a binary number: 1001
1001 in binary = 11 in octalInstructions:


*******************************/


===================================================================================================================

* Write a program to convert binary number into Decimal.



#include <stdio.h>
#include <math.h>
int binary_decimal(int n);

int main()
{
   int n;
   char c;
   printf("Instructions:\n");
   printf("1. Enter alphabet 'd' to convert binary to decimal.\n");
   
   scanf("%c",&c);
   if (c =='d' || c == 'D')
   {
       printf("Enter a binary number: ");
       scanf("%d", &n);
       printf("%d in binary = %d in decimal", n, binary_decimal(n));
   }
   
   return 0;
}


int binary_decimal(int n) /* Function to convert binary to decimal.*/

{
    int decimal=0, i=0, rem;
    while (n!=0)
    {
        rem = n%10;
        n/=10;
        decimal += rem*pow(2,i);
        ++i;
    }
    return decimal;
}



/******************************************


Instructions:
1. Enter alphabet 'd' to convert binary to decimal.
d
Enter a binary number: 1001
1001 in binary = 9 in decimalInstructions:


****************************/


===========================================================================================


* Write a program to convert binary number into Hexa-Decimal.


#include<stdio.h>
#include<conio.h>

int main()

{

 long int binaryNumber,hexadecimalNumber=0,j=1,remainder;

 printf("Enter any number any binary number: ");
        scanf("%ld",&binaryNumber);

 while(binaryNumber!=0)

 {
         remainder=binaryNumber%10;
  hexadecimalNumber=hexadecimalNumber+remainder*j;

  j=j*2;
  binaryNumber=binaryNumber/10;
      }

         printf("Equivalent hexadecimal value: %lX",hexadecimalNumber);

return 0;

}




/*****************************

1. Enter alphabet 'd' to convert binary to decimal.

Enter any number any binary number: 1001
Equivalent hexadecimal value: 9



******************/


==========================================================================================

Write a program to convert octal number into equivalent decimal number system


#include <stdio.h>
#include <math.h>

int octal_deciaml(int n);

int main()

{
   int n;
   char c;

   printf("Instructions:\n"); 
   
   printf("Enter alphabet 'd' to convert octal to decimal.\n");

   scanf("%c",&c);

   if (c =='d' || c == 'D')
   {
       printf("Enter an octal number: ");
       scanf("%d", &n);
       printf("%d in octal = %d in decimal", n, octal_decimal(n));
   }
   
}


int octal_decimal(int n) /* Function to convert octal to decimal */
{
    int decimal=0, i=0, rem;
    while (n!=0)
    {
        rem = n%10;
        n/=10;
        decimal += rem*pow(8,i);
        ++i;
    }
    return decimal;
}

/***************************************************

Output :

Enter alphabet 'd' to convert octal to decimal.
d
Enter an octal number: 45
45 in octal = 37

**************************************/


==============================================================================================================

* Write a program to convert octal number into equivalent hexadecimal number system

#include<stdio.h>
#include<math.h>
#include<string.h>

void octal_hex(int n, char hex[]); 

int hex_octal(char hex[]);

int main()

{
 char hex[20],c; int n;
 printf("Enter octal number: ");
 scanf("%d",&n);
 octal_hex(n,hex);

 printf("Hexadecimal number:%s",hex);
return 0;
}


void octal_hex(int n, char hex[])

{

 int i=0,decimal=0, rem;
 while (n!=0)

 {
  rem = n%10;
  n=n/10;
  decimal=decimal+rem*pow(8,i);
  ++i;
 }

 i=0;
 while (decimal!=0)
 
 {
 
    rem=decimal%16;
    switch(rem)
 
           {
  case 10:
  hex[i]='A';
  break;
  
  case 11:
  hex[i]='B';
  break;

  case 12:
  hex[i]='C';
  break;

  case 13:
  hex[i]='D';
  break;

  case 14:
  hex[i]='E';
  break;

  case 15: 
  hex[i]='F'; 
  break;
 
  default:
  hex[i]=rem+'0';
  break;
     }
        
     ++i;
            decimal/=16;
 }

hex[i]='\0';

strrev(hex); /* Function to reverse string. */

}


/******************************

Enter octal number: 127
Hexadecimal number:57Enter octal number:

***************************/


======================================================================================================



#include<stdio.h>
#define MAX 1000

int main()

{
    char binaryNumber[MAX],hexaDecimal[MAX];
    long int i=0;

    printf("Enter any hexadecimal number: ");
    scanf("%s",hexaDecimal);

    printf("\nEquivalent binary value: ");
    while(hexaDecimal[i])

   {
      switch(hexaDecimal[i])
 
      {
             case '0': printf("0000"); break;
             case '1': printf("0001"); break;
             case '2': printf("0010"); break;
             case '3': printf("0011"); break;
             case '4': printf("0100"); break;
             case '5': printf("0101"); break;
             case '6': printf("0110"); break;
             case '7': printf("0111"); break;
             case '8': printf("1000"); break;
             case '9': printf("1001"); break;
             case 'A': printf("1010"); break;
             case 'B': printf("1011"); break;
             case 'C': printf("1100"); break;
             case 'D': printf("1101"); break;
             case 'E': printf("1110"); break;
             case 'F': printf("1111"); break;
             case 'a': printf("1010"); break;
             case 'b': printf("1011"); break;
             case 'c': printf("1100"); break;
             case 'd': printf("1101"); break;
             case 'e': printf("1110"); break;
             case 'f': printf("1111"); break;

             default:  printf("\nInvalid hexadecimal digit %c ",hexaDecimal[i]); return 0;
        }

         i++;
    }

    return 0;
}


/***************************************

Enter any hexadecimal number: a1.b2

Equivalent binary value: 10100001




*****************************/


==================================================================================================================


* Write a program to convert hexadecimal number into equivalent octal number system


#include <stdio.h>
#include<math.h> 
#include<string.h>
 
int hex_octal(char hex[]);

int main() 

{

 char hex[20],c; 
 int n; 

 printf("Enter hexadecimal number: "); 
 scanf("%s",hex); 
 printf("Octal number: %d",hex_octal(hex)); 

return 0; 

}

 int hex_octal(char hex[])
  /* Function to convert hexadecimal to octal.*/ 

   { 

 int i,length, decimal=0, octal=0;

 for(length=0; hex[length]!='\0'; ++length); for(i=0; hex[i]!='\0'; ++i, 
 --length) 

     { 
 if(hex[i]>='0' && hex[i]<='9') decimal+=(hex[i]-'0')*pow 
 (16,length-1);
 if(hex[i]>='A' && hex[i]<='F') decimal+=(hex[i]-55)*pow(16,length-1); 
 if(hex[i]>='a' && hex[i]<='f') decimal+=(hex[i]-87)*pow(16,length-1); 
    }

   /* At this point decimal contains the decimal value of given hexadecimal number. */ 
 
 i=1; 
 while(decimal!=0) 

    {
 
 octal+=(decimal%8)*i; 
 decimal/=8; 
 i*=10; 
    }

return octal;

}

/**************************************** 

Output:

Enter hexadecimal number: 1A2

Octal number:642


*************************************************/


===============================================================================================

* Write a program to convert hexadecimal number into equivalent decimal number system

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
 
unsigned long convertToDecimal(char hex[]);
 
int main()

{
    char hex[9];// 8 characters for 32-bit Hexadecimal Number and one for '\0'.
    unsigned long decimalNumber;

    printf(" C Program to Convert Hexadecimal Number to Decimal Number \n");
    printf(" Enter 32-bit Hexadecimal Number : ");
    scanf("%s", hex);
 
    decimalNumber = convertToDecimal(hex);
    printf(" Decimal Number is %u  \n", decimalNumber);
 
    printf(" Press enter to continue... \n");

    fflush(stdin);
    getchar();
    return 0;

}
 
unsigned long convertToDecimal(char hex[])

{
    char *hexString;
    int length = 0;
    const int base = 16; // Base of Hexadecimal Number
    unsigned long decimalNumber = 0;

    int i;
    // Find length of Hexadecimal Number
    for (hexString = hex; *hexString != '\0'; hexString++)

    {
        length++;
    }


    // Find Hexadecimal Number

    hexString = hex;

    for (i = 0; *hexString != '\0' && i < length; i++, hexString++)

    {
        // Compare *hexString with ASCII values
        if (*hexString >= 48 && *hexString <= 57)   // is *hexString Between 0-9

        {
            decimalNumber += (((int)(*hexString)) - 48) * pow(base, length - i - 1);
        }

        else if ((*hexString >= 65 && *hexString <= 70))   // is *hexString Between A-F

        {
            decimalNumber += (((int)(*hexString)) - 55) * pow(base, length - i - 1);
        }

        else if (*hexString >= 97 && *hexString <= 102)   // is *hexString Between a-f

        {
            decimalNumber += (((int)(*hexString)) - 87) * pow(base, length - i - 1);
        }

        else

        {
            printf(" Invalid Hexadecimal Number \n");
 
            printf(" Press enter to continue... \n");
            fflush(stdin);
            getchar();
            return 0;
            exit(0);
        }
    }

    return decimalNumber;
}


/********************************************


Enter 32-bit Hexadecimal Number : 10
Decimal Number is 16



***********************************/

=================================================================================================================

* Write a program for convert Decimal Number into BCD Number.

#include<stdio.h>
#include<conio.h>
#include<string.h>

int validate(char[]);

void start_detail();
void print_line();

int main()
{
 int l,i,flag=1;

 char ch,num[10];

 do
 {
  flag=1;

  start_detail();

  printf("\n\n\t\tEnter Decimal Number to Convert BCD Number : ");
  scanf("%s",&num);

  printf("\n");
  print_line();

  printf("\n\t\tYour BCD Number is : ");
 
  flag=validate(num);

  if(flag==1)
  {
   l=strlen(num);

   for(i=0; i<l;i++)
   {
    switch(num[i])
    {
     case '0' :
      printf("0000");
      break;

     case '1' :
      printf("0001");
      break;

     case '2' :
      printf("0010");
      break;

     case '3' :
      printf("0011");
      break;

     case '4' :
      printf("0100");
      break;

     case '5' :
      printf("0101");
      break;

     case '6' :
      printf("0110");
      break;

     case '7' :
      printf("0111");
      break;

     case '8' :
      printf("1000");
      break;

     case '9' :
      printf("1001");
      break;

     case '.' :
      printf(".");
      break;
      }
   }
  }

  else
  {
   printf("\n\n\t\tInvalid Decimal Number");
  }


  printf("\n");
  print_line();

  printf("\n\n\t\t\tDo you want to continue (y/n) : ");
  ch=getche();

 }

 while(ch=='y' || ch=='Y'); 

 getch();

}

int validate(char num[])
{
 int ascii,flag=1,i,point=0;
 
 for(i=0; num[i]!='\0'; i++)
 {
  ascii=num[i];

  if(ascii==46)
  { 
   point++;
  }

  if(!(ascii>=48 && ascii<=57 || ascii==46))
  {
   flag=0;
  }

 }

 if(point > 1)
 {
  flag = 0;
 }

 return flag;

}


void print_line()
{

 printf("\n\t\t---------------------------------------------\n");

}

void start_detail()
{
 
 system("cls");
 printf("\n");
 printf("\n\t\t**************************************************\n");
 printf("\n\t\t*  CONVERSION OF DECIMAL NUMBER INTO BCD NUMBER  *\n");
 printf("\n\t\t**************************************************\n");
 
}


/*************************************


*  CONVERSION OF DECIMAL NUMBER INTO BCD NUMBER

Enter Decimal Number to Convert BCD Number : @

Invalid Decimal Number !

Do you want to continue (y/n) : y

Enter Decimal Number to Convert BCD Number : M

Invalid Decimal Number !

Do you want to continue (y/n) : y

Enter Decimal Number to Convert BCD Number : 102

----------------------------------------------

Your BCD Number is : 000100000010

----------------------------------------------


===========================================================================================================================

* Write a program for convert  Decimal Number into Binary Number  using bitwise operator.

#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<stdlib.h>
#define s 10

void start_detail();
void print_line();   

int main()
{
 
 int n,i,m,k,f=1;
 char ch,num[s];

 do
 {
  f=1;

  start_detail();

  printf("\n\t\tEnter any Decimal number to convert Binary Number : ");
  scanf("%s",num);
 

  printf("\n");
  print_line();

  for(i=0; num[i]!='\0' && f==1 ; i++)
  {
   if(!(isdigit(num[i])))
   f = 0;
  }
 
  if(f == 1)
  {
   n = atoi(num);

   for(i=15 ; i>=0 ; i--)
   {
    m = 1 << i;
    k = n & m;

    if(k == 0)
    {
     printf("0");
    }

    else
    {
     printf("1");
    }
   }
  }

  else
  {
   printf("\n\t\tInvalid Decimal Number !");
  }


  printf("\n");
  print_line();

  printf("\n\n\t\t\tDo you want to continue (y/n) : ");
  ch=getche();

 }

 while(ch=='y' || ch=='Y'); 

 getch();


}


void print_line()
{

 printf("\n\t\t\t------------------------------------\n");

}

void start_detail()
{
 
 system("cls");
 printf("\n");
 printf("\n\t\t***********************************************************\n");
 printf("\n\t\t*  CONVERSION OF DECIMAL NUMBER INTO BINARY CODE NUMBER   *\n");
 printf("\n\t\t***********************************************************\n");
 
}


/**********************************

Enter any Decimal number to convert Binary Number : #


   ------------------------------------

    Invalid Decimal Number !



*****************************/


============================================================================================================================================

Write a program for convert Decimal Number into Excess-3 Number .

#include<stdio.h>
#include<conio.h>
#include<string.h>

int validate(char[]);

void start_detail();
void print_line();

int main()
{
 int l,i,val,flag=1;

 char ch,num[10];

 do
 {
  flag=1;

 
  start_detail();

  printf("\n\t\t\Enter Decimal Number to Convert Excess-3 Number : ");
  scanf("%s",num);

  printf("\n");
  print_line();

  printf("\n\t\tExcess-3 Number Is : ");
 
  flag = validate(num);
 
  if(flag == 1)
  {
   l= strlen(num);

   for(i=0; i<l;i++)
   {
    val=(int)num[i]-'0';
 
    switch(val + 3)
    {
     case 3 :
      printf("0011");
      break;

     case 4 :
      printf("0100");
      break;

     case 5 :
      printf("0101");
      break;

     case 6 :
      printf("0110");
      break;

     case 7 :
      printf("0111");
      break;

     case 8 :
      printf("1000");
      break;

     case 9 :
      printf("1001");
      break;

     case 10 :
      printf("1010");
      break;

     case 11 :
      printf("1011");
      break;

     case 12 :
      printf("1100");
      break;

     case 1 :
      printf(".");
      break;
      }
   }
  }

  else
  {
   printf("\n\t\tInvalid Decimal Number !");

  }

  printf("\n");

  print_line();

  printf("\n\n\t\t\tDo you want to continue (y/n) : ");
  ch=getche();

 }

 while(ch=='y' || ch=='Y'); 

 getch();

}


int validate(char num[])
{
 int ascii,flag=1,i,point=0;
 
 for(i=0; num[i]!='\0'; i++)
 {
  ascii=num[i];

  if(ascii==46)
  { 
   point++;
  }

  if(!(ascii>=48 && ascii<=57 || ascii==46))
  {
   flag=0;
  }

 }

 if(point > 1)
 {
  flag=0;
 }

 return flag;

}


void print_line()
{

 printf("\n\t\t----------------------------------------------\n");

}

void start_detail()
{
 
 system("cls");
 printf("\n");
 printf("\n\t\t********************************************************\n");
 printf("\n\t\t*   CONVERSION OF DECIMAL NUMBER INTO EXCESS-3 NUMBER  *\n");
 printf("\n\t\t********************************************************\n");
 
}


/********************************

Enter Decimal Number to Convert Excess-3 Number : $


  ----------------------------------------------

   Invalid Decimal Number !

***********************************************/


===================================================================================================================

* Write a program for convert Binary Number into Gray code Number.

#include<stdio.h>
#include<conio.h>
#include<string.h>

int validate(char[]);

void start_detail();
void print_line(); 


int main()
{
 char ch,num[20];
 int l,i,val,flag=0;


 do
 {
  flag=0;


  star_detail();

  printf("\n\t\tEnter Binary Number to Convert Gray number : ");
  scanf("%s",num);
 
  print_line();

  flag = validate(num);

  if(flag==0)
  {
   printf("\n\t\tGray Code Number is : ");
   printf("%c",num[0]);
  
   l=strlen(num);

   for(i=0; i<l-1; i++)
   {
    val = (int)((num[i] -'0')+(int)(num[i+1]-'0')) %2;

    printf("%d",val);
   }
  }

  else
  {
   printf("\n\n\t\t\tInvalid Binary Number !");
  }

  printf("\n");
  print_line();

  printf("\n\n\t\tDo you want to continue (y/n) : ");
  ch=getche();

 }

 while(ch=='y' || ch=='Y');

 getch();

}

int validate(char num[])
{
 int ascii,flag=0,i;

 for(i=0; num[i]!= '\0'; i++)
 {
  ascii=num[i];
  
  if(!(ascii>=48 && ascii<=49))
  {
   flag=1;
  }
 }

 return flag;

}


void print_line()
{

 printf("\n\t\t-----------------------------------------------\n");

}

void star_detail()
{
 
 system("cls");
 printf("\n");
 printf("\n\t\t******************************************************\n");
 printf("\n\t\t* CONVERSION OF BINARY NUMBER INTO GRAY CODE NUMBER  *\n");
 printf("\n\t\t******************************************************\n\n");

}

/*********************************************

Enter Binary Number to Convert Gray number :  M

  -----------------------------------------------

   Invalid Binary Number !


******************************************/

====================================================================================================================================

Write a program for convert Gray code Number into Binary Number.

#include<stdio.h>
#include<conio.h>
#include<string.h>

int validate(char[]);

void start_detail();
void print_line();


int main()
{
 char num[20],ch;

 int l,i,val,ans,flag=1;

 do
 {
  flag=1;
 
  start_detail();

  printf("\n\t\tEnter Gray Number into Convert Binary Number : ");
  scanf("%s",num);

  printf("\n");
  print_line();
 
  flag = validate(num);
 
  if(flag == 1)
  {
   l = strlen(num);
  
   printf("\n\t\t\tBinary Number Is  : ");
   printf("%c",num[0]);

   val = num[0];
  
   for(i=1 ; i <l ;i++)
   {
    ans = (int)((num[i] -'0')  + (int)(val)) % 2;

    val = ans;

    printf("%d",ans);
   }
  }

  else
  {
   printf("\n\t\t\tInvalid Gray number !");
  }

  printf("\n");
  print_line();

  printf("\n\n\t\t\tDo you want to continue (y/n) : ");
  ch=getche();

 }

 while(ch=='y' || ch=='Y'); 

 getch();

}


int validate(char num[])
{
 int ascii,flag=1,i;

 for(i=0 ; num[i] != '\0' ; i++)
 {
  ascii = num[i];
  
  if(!(ascii >=48 && ascii <=49))
  {
   flag=0;
  }
 }

 return flag;
}


void start_detail()
{

 system("cls");
 printf("\n");
 printf("\n\t\t*******************************************************\n");
 printf("\n\t\t*  CONVERSION OF GRAY CODE NUMBER INTO BINARY NUMBER  *\n");
 printf("\n\t\t*******************************************************\n\n");

}

void print_line()
{
 printf("\n\t\t\t--------------------------------");
 
}


/******************************************************

Output :

Enter Gray Number into Convert Binary Number :  15

   --------------------------------

   Invalid Gray number !

*****************************************************/

====================================================================================================================

Write a program for convert Decimal Number into Gray code Number.

#include<stdio.h>
#include<conio.h>
#include<string.h>
#define size 50

void start_detail();
void print_line();        

int main()
{
 int i,j,k,dec,swap=0,len=0;

 char value[size],ans[size],ch;

 do
 {
  swap=0,len=0;


  start_detail();

  printf("\n\n\t\t\tEnter Value in Decimal Format : ");  
  scanf("%d",&dec);

  printf("\n");
  print_line();
 
 
  for(i=0;dec!=0;i++)
  {
   if(dec % 2 == 0 )
   {
    value[i]=48;
   }

   else
   {
    value[i]=49;
   }

   dec/=2;
    //printf("%c",value[i]);
  
  }
 
  i--;
  k=i;
   //len=strlen(value);
 
  for(j=0;j<=(i/2);j++)
  {
   swap=value[j];

   value[j]=value[i];

   value[i]=swap;
  
   i--;   
  }

  for(i=0;i<=k;i++)
  {
   //printf("%c",value[i]);   //Here get values of Binary Number 
  }
 
   
  printf("\n\t\t\tGray Code Number is : ");

  ans[0]=value[0];

  printf("%c",ans[0]);

  for(i=0;i<k;i++)
  {
   j=i;
   j++;

   if(value[i] ^ value[j])
   {
    ans[j]=49;

    printf("%c",ans[j]);
   }

   else 
   {
    ans[j]=48;

    printf("%c",ans[j]);
   }
  }

  printf("\n");
  print_line();

  printf("\n\n\t\t\tDo you want to continue (y/n) : ");
  ch=getche();

 }

 while(ch=='y' || ch=='Y'); 

 getch();

}


void print_line()
{

 printf("\n\t\t\t------------------------------------\n");

}

void start_detail()
{
 
 system("cls");
 printf("\n");
 printf("\n\t\t*********************************************************\n");
 printf("\n\t\t*  CONVERSION OF DECIMAL NUMBER INTO GRAY CODE NUMBER   *\n");
 printf("\n\t\t*********************************************************\n");
 
}


/**************************************

Enter Value in Decimal Format : 10

   ------------------------------------

   Gray Code Number is : 1111

**************************************************/

=====================================================================================================================================

* PROGRAM FOR CONVERSION FROM ANY NUMBER SYSTEM TO ANY NUMBER SYSTEM.

#include<stdio.h>
#include<math.h>
#include<conio.h>
#include<string.h>
void details();
void details()
{
 printf("\n\t\tEnter 2 for  Binary");
 printf("\n\t\tEnter 3 for Turnary");
 printf("\n\t\tEnter 4 for Quarternary");
 printf("\n\t\tEnter 5 for Quinary");
 printf("\n\t\tEnter 8 for Octal");
 printf("\n\t\tEnter 10 for Decimal");
 printf("\n\t\tEnter 12 for decimal");
 printf("\n\t\tEnter 16 for Hexa Decimal"); 
}
int main()
{
 int num1[30],i,j,choise,count=0,flag=0,sum1=0,base=0,rem,temp,any1[100],dest,len=0;
 float sum2=0,tot,temp1,rem1;
 char n1[15],any[100],any2[100],choice;
 
 do
 {
  clrscr();
  flag=0;
  details();
  printf("\n\n\t\tEnter source number  = ");
  scanf("%d",&choise);
  switch(choise)
  {
  case 2:
   base=2;
   break;
  case 3:
   base=3;
   break;
  case 4:
   base=4;
   break;
  case 5:
   base=5;
   break;
  case 8:
   base=8;
   break;
  case 10:
   base=10;
   break;
  case 12:
   base=12;
   break;
  case 16:
   base=16;
   break;
  default:
   flag=1;
   printf("\t\tinvalid value");
   getch();   
   break;
 }
 }while(flag==1);





 if(base==2 || base==3 || base==4 || base==5 || base==8 || base==10 || base==12 || base==16)
 { 
  do
  {
   flag=0;
   printf("\n\n\t\tEnter Number :-- ");
   scanf("%s",n1);
   for(i=0;n1[i]!='\0';i++)
   {
    if(n1[i]!='.')
    {
     if(n1[i]>47 && n1[i]<base+48)
      num1[i]=n1[i]-48;
     else if(n1[i]>96 && n1[i]<99 && base>10)
      num1[i]=n1[i]-87;
     else if(n1[i]>64 && n1[i]<67 && base>10)
      num1[i]=n1[i]-55;
     else if(n1[i]>96 && n1[i]<103 && base>12)
      num1[i]=n1[i]-87;
     else if(n1[i]>64 && n1[i]<71 && base>12)
      num1[i]=n1[i]-55;
     else
     {
      flag=1;
     }
     
    }
    len++;
   }
   if(flag==1)
   {
    printf("\n\t\tEnter The Valid Numbers.........!");   
    getch();    
   }
  }while(flag==1);  
    
   i=0;
   while(n1[i]!='.' && n1[i]!='\0')
   {
    i++;
    count++;
   }
   for(i=count-1,j=0;i>=0;i--,j++)
   {
    sum1=sum1+num1[i]*pow(base,j);
   }
   
   if(n1[count]=='.')//Fraction Part.......!
   {
    for(i=count+1,j=-1;n1[i]!='\0';i++,j--)

    {
     (float)sum2=(float)sum2+(float)num1[i]*pow(base,j);
    }
    
   }
  

 do
 {

 flag=0; 
 printf("\n\t\tEnter destination number = ");
 scanf("%d",&dest);

 switch(dest)
 {
 case 2:
  dest=2;
  break;
 case 3:
  dest=3;
  break;
 case 4:
  dest=4;
  break;
 case 5:
  dest=5;
  break;
 case 8:
  dest=8;
  break;
 case 10:
  dest=10;
  break;
 case 12:
  dest=12;
  break;
 case 16:
  dest=16;
  break;
 default:
  printf("\t\tNot A Valid Choice...");
  flag=1;
  getch();
  break;

 }
 }while(flag==1);
  


  if(dest==10)
  {
  tot=sum1+sum2;
   printf("\n\t\tDecimal Number=%f",tot);   
  }
  else if(dest==2||dest==3||dest==4||dest==5||dest==8||dest==12||dest==16)
  {
  temp=sum1;
  i=0;
    while(temp!=0)
    {
     rem=temp%dest;

   switch(rem)
   {
   case 10:
   any[i]='A';
   break;
   case 11:
       any[i]='B';
       break;
   case 12:
    any[i]='C';
    break;
   case 13:
       any[i]='D';
       break;
   case 14:
       any[i]='E';
       break;
   case 15:
       any[i]='F';
       break;
   default:
       any[i]=rem+'0';
       break;
   }
     ++i;
   temp=temp/dest;
    }
    any[i]='\0';
      strrev(any);

    temp1=sum2;

      i=1;
    while(i<=8)
    {
     rem=temp1*dest;
     rem1=temp1*dest;
     temp1=rem1-rem;

   switch(rem-87)
   {
   default:
       any1[i]=rem+'0'-48;
       break;
   }
      ++i;
    }
    printf("\n\n\t\tThe converted answer is = %s.",any);
    for(i=1;i<=8;++i)
    {
  switch(any1[i])
   {
   case 10:
      printf("A");
       
       break;
   case 11:
      printf("B");
       
       break;
   case 12:
      printf("C");
    
          break;
   case 13:
      printf("D");
 
       break;
   case 14:
      printf("E");

       break;
   case 15:
      printf("F");
       
       break;
   default:
      printf("%d",any1[i]);
       
       break;
   }
  
  }
 }
 }
     getch();
     return 0;

}


/************************************

Output:

Enter 2 for  Binary
  Enter 3 for Turnary
  Enter 4 for Quarternary
  Enter 5 for Quinary
  Enter 8 for Octal
  Enter 10 for Decimal
  Enter 12 for decimal
  Enter 16 for Hexa Decimal

  Enter source number  = 2

  Enter Number :-- 1111.1111

  Enter destination number = 16

  The converted answer is = F.F

**********************************************/

====================================================================================================================

* program for decimal to bcd

#include<stdio.h>
#include<conio.h>

#define size 20
void main(){
 int i,j,k,l,n,tmp;
 char s[size],r[size],sr[size+size];
 int srp=0; //sr pointer
 printf("enter decimal number: ");scanf("%s",&s);
 //find string size
 for(i=0;s[i]!='\0';i++);
 
 
 //convert individual number to binary
 k=0;
 
 for(i=0;s[i]!='\0';i++){
  n=s[i]-48;
  while(n>=1){
   j=n%2;
   n/=2;
   r[k++]=j+48;
   
  }
  
  
 
 r[k]='\0';
 //printf("r=%s\n",r);
  //reverse binary 
  tmp=k;
  j=k-1;
  for(l=0;l<=j;l++,j--){
   k=r[l];
   r[l]=r[j];
   r[j]=k;
  }
  
  //add binary of a number to bcd
  k=tmp;
  j=0;
  //printf("r=%s\n",r);
  for(l=0;l<4;l++){
  if((l+k)<4){
   sr[srp++]='0';
  }else{
   sr[srp++]=r[j++];
  }
  }
  sr[srp++]=' ';
  sr[srp]=r[0]='\0';
  k=0;
 }
 printf("the bcd string is: %s",sr);
 
 getch();
}


/***********************************

OUTPUT:
=======

***************************/


===============================================================================================================================

program for decimal to excess-3

#include<stdio.h>
#include<conio.h>

#define size 20
void main(){
 int i,j,k,l,n,tmp;
 char s[size],r[size],sr[size+size];
 int srp=0; //sr pointer
 printf("enter decimal number: ");scanf("%s",&s);

 //find string size
 for(i=0;s[i]!='\0';i++);
 
 
 //convert individual number to binary
 k=0;
 
 for(i=0;s[i]!='\0';i++){
  n=s[i]-48;
  n+=3;
  while(n>=1){
   j=n%2;
   n/=2;
   r[k++]=j+48;
   
  }
  
  
 
 r[k]='\0';
 //printf("r=%s\n",r);
  //reverse binary 
  tmp=k;
  j=k-1;
  for(l=0;l<=j;l++,j--){
   k=r[l];
   r[l]=r[j];
   r[j]=k;
  }
  
  //add binary of a number to bcd
  k=tmp;
  j=0;
  //printf("r=%s\n",r);
  for(l=0;l<4;l++){
  if((l+k)<4){
   sr[srp++]='0';
  }else{
   sr[srp++]=r[j++];
  }
  }
  sr[srp++]=' ';
  sr[srp]=r[0]='\0';
  k=0;
 }
 printf("the excess-3 string is: %s",sr);
 
 getch();
}

/***************************************

OUTPUT:
=======

-------------------------------------------------------------------------------

Q1]  Using Loop & Bitwise operators both. 

E.G.:  i/ps A=____ 
               B=____   
 
                        Result: A.B=_______ (ANDing of A & B) 
                       A=1; B=1; Result A.B=1 (IN BINARY ONLY) 


ANS:-  
     
              #include<stdio.h>
       #include<conio.h>
       void main()

       {
  int A,B,i,ans;
  clrscr();

  printf("\nEnter A:");
  scanf("%d",&A);
  printf("\nEnter B:");
  scanf("%d",&B);

  if(A && B)
  {
       ans=1;
  }
  else
       ans=0;


        /* if(A || B)
  {
    ans=1;
  }
  else
    ans=0; */


  printf("\nA.B = %d",ans);
  getch();
       }

 /*----------------------------*

 Enter A:1

 Enter B:1

 A.B = 1


 */
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

Q2]  Same as above for AND, OR, NOT, NAND, XOR. Also provide menu choice for 
particular logic operations 


ANS:- 


#include<stdio.h>
#include<conio.h>
       void main()

       {
  int A,B,i,ans,ch;
  clrscr();

  printf("\nEnter A:");
  scanf("%d",&A);
  printf("\nEnter B:");
  scanf("%d",&B);

  printf("\n1. AND ");
  printf("\n2. OR");
  printf("\n3. NOT ");
  printf("\n4. NAND ");
  printf("\n5. XOR ");

  printf("\nYour Choice :");
  scanf("%d",&ch);
  switch(ch)
  {
   case 1:
    if(A && B)
    ans=1;
    else
    ans=0;
    break;

   case 2:
    if(A || B)
    ans=1;
    else
    ans=0;
    break;


   case 3:
         if( !A )
         ans=1;
         else
         ans=0;
         break;

   case 4:
         if(!(A & B))
         ans=0;
         else
         ans=1;
         break;

   case 5:
    if(A ^ B)
    ans=1;
    else
    ans=0;
    break;

   default:
    printf("wrong Choice");
  }

  printf("\nAns : %d",ans);
  getch();
       }
/*---------------

Enter A:1

Enter B:1

1. AND
2. OR
3. NOT
4. NAND
5. XOR
Your Choice :1

Ans : 1


Enter A:1

Enter B:0

1. AND
2. OR
3. NOT
4. NAND
5. XOR
Your Choice :2

Ans : 1


Enter A:1

Enter B:0

1. AND
2. OR
3. NOT
4. NAND
5. XOR
Your Choice :5

Ans : 1
Enter A:0

Enter B:1

1. AND
2. OR
3. NOT
4. NAND
5. XOR
Your Choice :4

Ans : 0


Enter A:1

Enter B:0

1. AND
2. OR
3. NOT
4. NAND
5. XOR
Your Choice :3

Ans : 0


*/

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&


Q3] Same as above for 8-bit binary word.

Q4] Same as above for 8-bit binary word.  

 
ANS 3&4 are same:-
      

    #include<stdio.h>
#include<conio.h>
void main()
{
 int a[8],b[8],ans[10],i;
 clrscr();

      printf("\n enter 8-bit binary number:");
 for(i=0;i<8;i++)
 {

   scanf("%d",&a[i]);
 }      printf("\n enter 8-bit binary number:");

 for(i=0;i<8;i++)

 {

   scanf("%d", &b[i]);
 }

  for(i=0;i<8;i++)
  {
   if(a[i]&&b[i])
   {

      ans[i]=1;

   }
   else
    ans[i]=0;


      printf("%d",ans[i]);


 }
    getch();
}
/*-----------------

 enter 8-bit binary number:1
 1
 1
 1
 1
 0
 0
 0

  enter 8-bit binary number:1
  0
  1
  0
  1
  0
  1
  0
  10101000





  */
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment