Search This Blog

Monday 29 February 2016

CRC Error Detection (Dynamic)

#include<stdio.h>
int main()
{
int a[10],d[10],k[10],z[10],i,n,q,x=1,s,m,j;
printf("Enter Total Data Bits");
scanf("%d",&n);
printf("Enter Total Divisor Bits");
scanf("%d",&q);
for(i=0;i<n;i++)
{
    printf("Enter Data");
    scanf("%d",&a[i]);
}
for(i=0;i<q;i++)
{
    printf("Enter divisor");
    scanf("%d",&d[i]);
}
for(i=0;i<q;i++)
{
    printf("Enter 0's for zero detection");
    scanf("%d",&z[i]);
}
printf("\nData Before Entering temp 0's\n");
for(i=0;i<n;i++)
{
    printf("%d",a[i]);
}
s=n+(q-1);
printf("\n");
for(i=n;i<s;i++)
{
    printf("Enter 0's ");
    scanf("%d",&a[i]);
}
printf("\nData After Entering temp 0's\n");
for(i=0;i<s;i++)
{
    printf("%d",a[i]);
}
i=0;
if(a[i]==1)
{
    for(i=0;i<q;i++)
    {
    if(a[i]==d[i])
    {
        k[i]=0;
    }
    else
    {
        k[i]=1;
    }
    }
    k[i]=a[q];
    for(j=0;j<q;j++)
    {
        k[j]=k[j+1];
    }
}
else
{
    for(i=0;i<q;i++)
    {
    if(a[i]==z[i])
    {
        k[i]=0;
    }
    else
    {
        k[i]=1;
    }
    }
    k[i]=a[q];
    for(j=0;j<q;j++)
    {
        k[j]=k[j+1];
    }
}
printf("\nK:");
for(i=0;i<q;i++)
{
    printf("%d",k[i]);
}
m=q;
do
{
x=x+1;
i=0;
if(k[i]==1)
{
    for(i=0;i<q;i++)
    {
    if(k[i]==d[i])
    {
        k[i]=0;
    }
    else
    {
        k[i]=1;
    }
    }
    m++;
    k[i]=a[m];
    for(j=0;j<q;j++)
    {
        k[j]=k[j+1];
    }
}
else
{
    for(i=0;i<q;i++)
    {
    if(k[i]==z[i])
    {
        k[i]=0;
    }
    else
    {
        k[i]=1;
    }
    }
    m++;
    k[i]=a[m];
    for(j=0;j<q;j++)
    {
        k[j]=k[j+1];
    }
}
printf("\nK:");
for(i=0;i<q;i++)
{
    printf("%d",k[i]);
}
}
while(x<n);
printf("\nCRC = ");
if(x==n)
{
    for(i=0;i<q-1;i++)
    {
    printf("%d",k[i]);
    }
}
}


Practical set 5 (Secant Method)

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
 
float fun(float x)
 {
    x=(x*sin(x))-1;
//  x=4*(pow(x,3))-(2*x)-6;
 //   x=x-(exp(1)*x)+2;
    return x;
 }
   
  float iteration(float a, float b)
  {
    float x;
x=((a*fun(b))-(b*fun(a)))/(fun(b)-fun(a));
      return x;
  }
   
 int main()
  {
      int i,n;
      int p[20];
      float a,b,x[10];
       
      printf("\nQuestion is : 4x^3-2x-6=0 \n");
      printf("\nEnter how many iteration : ");scanf("%d",&n);
       
  for(i=0;i<n;i++)
   {
       p[i]=fun(i);
       printf("\n f[%d] : %d ",i,p[i]);
   }
    
   for(i=0;i<n;i++)
    {
        if(p[i]*p[i+1]<0)
         {
            a=i;
            b=i+1;
            printf("\nThe root lies between : [%0.4f %0.4f]",a,b);
            break;
            }      
        }
        x[0]=a;
        x[1]=b;
        printf("\n x[0] : %f  ",x[0]);
        printf("\n x[1] : %f  ",i,x[1]);
        for(i=2;i<n;i++)
        {
            x[i]=iteration(x[i-2],x[i-1]);
            printf("\n x[%d] : %f  ",i,x[i]);
        }
return 0;
 }




by meet kheni