Thursday, February 14, 2013

Program to remove the characters present in Primary String from Secondary String and print the remaining.

/*
Program to remove the characters present in Primary String from Secondary String and print the remaining.
*/
#include<stdio.h>
void main()
{
    char prmstr[]={'a',' ','b','c','\n'};
    char secstr[]={'m','y',' ','n','a','m','e',' ','i','s',' ','a','b','c','\n'};
    char res[10];
    char ch,secch;
    int i,j,k;
    int flag=0;
    i=0;j=0;k=0;
    while(secstr[i]!='\n')
    {
        flag=0;
        ch=secstr[i];
        i++;
        j=0;
        while(prmstr[j]!='\n')
        {
            secch=prmstr[j];
            j++;
            if(ch==secch)
            {
                flag=1;
            }
        }
        if(flag==0)
        {
            res[k]=ch;
            k++;
        }
    }
    res[k]='\n';
    k=0;
    while(res[k]!='\n')
    {
        printf("%c",res[k]);
        k++;
    }
    printf("\n");
}

/*
OUTPUT

mynmeis

*/

Wednesday, February 13, 2013

Program To Rotate the Matrix

/*
Program to Rotate the Given Matrix:

*/
#include<stdio.h>
void main()
{
    int a[2][3]={0,1,0,1,1,1};
    int i,j;
    int i1,j1;
    printf("Matrix A:\n");
    for(i=0;i<2;i++)
    {
        for(j=0;j<3;j++)
            printf("%d\t",a[i][j]);
        printf("\n");
    }
    printf("Matrix After Rotation:\n");
    for(i=2;i>=0;i--)
    {
        for(j=0;j<2;j++)
            printf("%d\t",a[j][i]);
        printf("\n");
    }
}

/*
Suppose the Given Matrix be:

0    1    0   
1    1    1

Then the result should be:

0    1   
1    1   
0    1

//Simple Logic Take Care of loop
*/

Monday, February 11, 2013

Series of given range (Sum of previous two numbers)

/*
Program to read two numbers and a range and print the series (Sum of previous two numbers) of given range.

*/
#include<stdio.h>
void main()
{
    int range;
    int fs,sec,count=2,temp;
    printf("Enter the Fiirst and seconfd number:\n");
    scanf("%d%d",&fs,&sec);
    printf("Enter the Range:\n");
    scanf("%d",&range);
    if(fs<sec)
    {
        printf("%d\t%d\t",fs,sec);
        while(count<range)
        {
            temp=fs+sec;
            printf("%d\t",temp);
            fs=sec;
            sec=temp;           
            count++;
        }
        printf("\n");
    }
    else
    {
        printf("Invalid Input\n");
    }
}

/*
Say my Input is 2 and 3 for numbers and range is 5
the output should be as follow
2    3    5    8    13
*/

Sunday, February 10, 2013

Program to check the given number is power of two or not?

/*
Program to check the given number is power of two

*/


#include<stdio.h>
void main()
{
    int num,exor;
    printf("Enter a number:\n");
    scanf("%d",&num);
    exor=num & (num-1);
    if(exor==0)
        printf("Number is pow of 2\n");
    else
        printf("Number is not pow of 2\n");   
}


/*
Simple logic
Step 1:just read the number
Step 2:find Exclusive OR of number and (number-1) assign value to some variable say exor
Step 3: if exor's value is zero (0) thn we say number is the power of 2 otherwise not


If not understood convert the number and (number-1) to binary and follow from step 2
*/

Thursday, February 7, 2013

Covert binary number to its decimal equivalent

/*
Program to convert the binary number to its decimal equivalent
*/

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

main()
{
    int binnum,decimal=0,rem,i=0;
    printf("Enter the binary number: ");
    scanf("%d",&binnum);
   
    while(binnum!=0)
    {
        rem=binnum%10;
        if(rem>1){
            printf("\nNot Binary number\n");
            exit(1);
        }
        if(rem==0)
            i++;
        else
        {
            decimal+=pow(2,i);
            i++;
        }       
        binnum/=10;
    }
    printf("Decimal Equivalent is : %d\n",decimal);
}

Sunday, February 3, 2013

Program to find difference of two integers without using - operator


/*
Program to find difference of two integers without using - operator
Programmer : Syed Mohammad Ali
*/
#include<stdio.h>
void main()
{
     int a,b,diff=0;
     printf("Enter two integers\n");
     scanf("%d%d",&a,&b);
     if(a!=b)
     {
while(a!=b)
       {
diff++;
            b++;
       }
    }
    else
   {

   }
   printf("Difference = %d\n",diff);
}

/*
The Basic idea here is we assume we don't have - operator in our language.
Increment the small value variable until its value becomes equal to other variable value. Simultaneously increment the counter variable. When both variables values are equal, counter will hold the difference of the two numbers.
In the above program diff is the counter variable.
*/

Program to find product of two integers without using * operator


/*
Program to find product of two integers without using * operator
Programmer : Syed Mohammad Ali
*/
#include<stdio.h>
void main()
{
int a,b,prod=0;
printf("Enter two integers\n");
scanf("%d%d",&a,&b);
while(a!=0)
{
prod=prod+b;
a--;
}
printf("Product= %d\n",prod);
}


/*
The basic idea is that we assume that we dont have * operator in the language.
In this case add value of one variable to prod variable second variable number of times. In the example we added b to prod a number of times.
*/