Nov 17, 2011

C Program to implement Linear regression algorithm.

Linear Regression  is the predicting the value of one scalar variable(y) using the explanatory another variable(x). Linear regression  is represented by the equation Y = a + bX, where X is the explanatory variable and Y is the scalar variable. The slope of the line is b, and a is the intercept. For linear list square modeling, Linear regression is very helpful. Read more about C Programming Language.

/************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/



#include "stdio.h"
#include "conio.h"
#include "math.h"
#include "string.h"

float mean(float *a, int n);
void deviation(float *a, float mean, int n, float *d, float *S);

void main() {
 float a[20], b[20], dx[20], dy[20];
 float sy = 0, sx = 0, mean_x = 0, mean_y = 0, sum_xy = 0;
 float corr_coff = 0, reg_coff_xy = 0, reg_coff_yx = 0;
 char type_coff[7];
 int n = 0, i = 0;

 clrscr();

 printf("Enter the value of n: ");
 scanf("%d", &n);
 printf("Enter the values of x and y:\n");
 for (i = 0; i < n; i++)
  scanf("%f%f", &a[i], &b[i]);
 mean_x = mean(a, n);
 mean_y = mean(b, n);
 deviation(a, mean_x, n, dx, &sx);
 deviation(b, mean_y, n, dy, &sy);

 for (i = 0; i < n; i++)
  sum_xy = sum_xy + dx[i] * dy[i];
 corr_coff = sum_xy / (n * sx * sy);
 printf("Enter the type of regression coefficient as 'x on y' or 'y on x': ");
 fflush(stdin);
 gets(type_coff);

 if (strcmp(type_coff, "x on y") == 1) {
  reg_coff_xy = corr_coff * (sx / sy);
  printf("\nThe value of linear regression coefficient is %f",
    reg_coff_xy);
 } else if (strcmp(type_coff, "y on x") == 1) {
  reg_coff_yx = corr_coff * (sy / sx);
  printf("\nThe value of linear regression coefficient is %f",
    reg_coff_yx);
 } else
  printf("\nEnter the correct type of regression coefficient.");
 getch();
}

float mean(float *a, int n) {
 float sum = 0, i = 0;
 for (i = 0; i < n; i++)
  sum = sum + a[i];
 sum = sum / n;
 return (sum);
}

void deviation(float *a, float mean, int n, float *d, float *s) {
 float sum = 0, t = 0;
 int i = 0;
 for (i = 0; i < n; i++) {
  d[i] = a[i] - mean;
  t = d[i] * d[i];
  sum = sum + t;
 }
 sum = sum / n;
 *s = sqrt(sum);
}

Read more Similar C Programs
Learn C Programming

Simple C Programs
You can easily select the code by double clicking on the code area above. To get regular updates on new C programs, you can You can discuss these programs on our Facebook Page. Start a discussion right now,

our page! Share this program with your Facebook friends now! by liking it

(you can send this program to your friend using this button) Like to get updates right inside your feed reader? Grab our feed!


To browse more C Programs visit this link

Nov 16, 2011

C Program to implement Radix Sort.

Radix sort is an algorithm. Radix Sort sorts the elements by processing its individual digits. Radix sort processing the digits either by Least Significant Digit(LSD) method or by Most Significant Digit(MSD) method. Read more about C Programming Language.
/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/

#include "stdio.h"

#define MAX 100
#define SHOWPASS

void print(int *a, int n) {
 int i;
 for (i = 0; i < n; i++)
  printf("%d\t", a[i]);
}

void radix_sort(int *a, int n) {
 int i, b[MAX], m = 0, exp = 1;
 for (i = 0; i < n; i++) {
  if (a[i] > m)
   m = a[i];
 }

 while (m / exp > 0) {
  int box[10] = { 0 };
  for (i = 0; i < n; i++)
   box[a[i] / exp % 10]++;
  for (i = 1; i < 10; i++)
   box[i] += box[i - 1];
  for (i = n - 1; i >= 0; i--)
   b[--box[a[i] / exp % 10]] = a[i];
  for (i = 0; i < n; i++)
   a[i] = b[i];
  exp *= 10;

#ifdef SHOWPASS
  printf("\n\nPASS   : ");
  print(a, n);
#endif
 }
}

int main() {
 int arr[MAX];
 int i, num;

 printf("\nEnter total elements (num < %d) : ", MAX);
 scanf("%d", &num);

 printf("\nEnter %d Elements : ", num);
 for (i = 0; i < num; i++)
  scanf("%d", &arr[i]);

 printf("\nARRAY  : ");
 print(&arr[0], num);

 radix_sort(&arr[0], num);

 printf("\n\nSORTED  : ");
 print(&arr[0], num);

 return 0;
}

Read more Similar C Programs
Array In C

Sorting Techniques

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!



To browse more C Programs visit this link

Nov 15, 2011

K & R C Programs Exercise 1-19

K and R C, Solution to Exercise 1-19:
Write a function reverse(str) that reverses the character string str. Use it to write program that reverse thes its input a line at a time. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .


/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/

#include "stdio.h"

#define MAXINLINE 1000 /* maximum input line size */

int get_lines(char line[], int maxline);
void reverse(char str[]);

/* print longest input line */
main() {

 char line[MAXINLINE]; /* current input line */

 while ((get_lines(line, MAXINLINE)) > 0) {

  reverse(line);
  printf("%s", line);

 }

}

/* getline: read a line into s, return length */
int get_lines(char str[], int line) {
 int c, i, j;

 for (i = 0, j = 0; (c = getchar()) != EOF && c != '\n'; ++i) {
  if (i < line - 1) {
   str[j++] = c;
  }
 }
 if (c == '\n') {
  if (i <= line - 1) {
   str[j++] = c;
  }
  ++i;
 }
 str[j] = '\0';
 return i;
}

/*reverse the string str*/
void reverse(char str[]) {
 int i, j;
 char temp;
 i = 0;
 while (str[i] != '\0')
  ++i;
 --i;
 if (str[i] != '\n')

  --i;
 j = 0;
 while (j < i) {
  temp = str[j];
  str[j] = str[i];
  str[i] = temp;
  --i;
  ++j;
 }
}

Read more Similar C Programs
C Basic

K and R C Programs Exercise

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!

To browse more C Programs visit this link

K & R C Exercise 1-18

K and R C, Solution to Exercise 1-18:
Remove trailing blanks and tabs from each line of input, and to delete entirely blank lines. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .



/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/

#include "stdio.h"

#define MAXLINE 1000

int get_lines(char line[], int maxline);
int char remove(char str[]);

main()
{

 char line[MAXINLINE];/* current input line */

 while((get_lines(line,MAXINLINE))>0)
  if(remove(line)> 0)
   printf("%s", line);
 return 0;

}
/*
 remove trailing blanks and tabs from character string str
 */
int remove(char str[])
{
 int i=0;
 while(str[i] !='\n')
  ++i;

 --i;

 while(i>=0 && (str[i]==' ' || str[i]=='\t'))
  --i;
 if(i>=0)
 {
  ++i;
  s[i]='\n';
  ++i;
  s[i]='\0';

 }
 return i;
}
/* getline: read a line into str, return length */
int get_lines(char str[], int line)
{
 int c, i, j;

 for(i = 0, j = 0; (c = getchar())!=EOF && c != '\n'; ++i)
 {
  if(i < line - 1)
  {
   str[j++] = c;
  }
 }
 if(c == '\n')
 {
  if(i <= line - 1)
  {
   str[j++] = c;
  }
  ++i;
 }
 str[j] = '\0';
 return i;
}

Read more Similar C Programs
C Basic

K and R C Programs Exercise

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!


To browse more C Programs visit this link

C Program To Implement Interpolation Search

Interpolation search is an algorithm used for searching a given value in an ordered indexed array. Interpolation search is sometimes called as extrapolation search. For uni formally distributed data items Interpolation search is the best method. for example: library books directory. Read more about C Programming Language.
/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/


#include "stdio.h"
#include "stdlib.h"

#define MAX 200

int interpolation_search(int a[], int bottom, int top, int item) {

 int mid;
 while (bottom <= top) {
  mid = bottom + (top - bottom)
    * ((item - a[bottom]) / (a[top] - a[bottom]));
  if (item == a[mid])
   return mid + 1;
  if (item < a[mid])
   top = mid - 1;
  else
   bottom = mid + 1;
 }
 return -1;
}

int main() {
 int arr[MAX];
 int i, num;
 int item, pos;

 printf("\nEnter total elements (num< %d) : ", MAX);
 scanf("%d", &num);

 printf("Enter %d Elements : ", num);
 for (i = 0; i < num; i++)
  scanf("%d", &arr[i]);

 printf("\nELEMENTS ARE\n: ");
 for (i = 0; i < num; i++)
  printf("%d\t", arr[i]);

 printf("\nSearch For : ");
 scanf("%d", &item);
 pos = interpolation_search(&arr[0], 0, num, item);
 if (pos == -1)
  printf("\nElement %d not found\n", item);
 else
  printf("\nElement %d found at position %d\n", item, pos);

 return 0;
}
Read more Similar C Programs
C Basic

Search Algorithms.

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!
To browse more C Programs visit this link

K&R C Program Exercise 1-17

K and R solution Exercise 1-17,to print all input lines that are longer than 80 characters. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .


/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/


#include "stdio.h"
#define MAXINLINE 1000  /* maximum line sizes defined*/
#define LONGLINESIZE  80     /* longer line defined as 80 */
int get_lines(char line[], int maxline);
/*print lines longer than LONGLINESIZE     */
main()
{
 int len;           /*current line length */
 char line[MAXINLINE];/* current input line */
 while((len=get_lines(line,MAXINLINE))>0)
  if(len> LONGLINE)
   printf("%s", line);
 return 0;

}

/* getline: read a line into s, return length */
int get_lines(char s[], int line)
{
 int c, i, j;

 for(i = 0, j = 0; (c = getchar())!=EOF && c != '\n'; ++i)
 {
  if(i < line - 1)
  {
   s[j++] = c;
  }
 }
 if(c == '\n')
 {
  if(i <= line - 1)
  {
   s[j++] = c;
  }
  ++i;
 }
 s[j] = '\0';
 return i;
}
Read more Similar C Programs
C Basic

K and R C Programs Exercise

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!


To browse more C Programs visit this link

K&R C Program Exercise 1-16

K and R solutions to Revise the the main routine of the longest-line program so it will correctly print the length of arbitrarily long input lines, and as much as possible of the text. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .


/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/

#include "stdio.h"

#define MAXINLINE 1000 /* maximum input line size */

int getline(char line[], int MAXINLINE);
void copy(char to[], char from[]);

/* print longest input line */
int main(void)
{
 int len;               /* current line length */
 int max;               /* maximum length seen so far */
 char line[MAXINLINE];    /* current input line */
 char longest[MAXINLINE]; /* longest line saved here */

 max = 0;

 while((len = getline(line, MAXINLINE)) > 0)
 {
  printf("%d: %s", len, line);

  if(len > max)
  {
   max = len;
   copy(longest, line);
  }
 }
 if(max > 0)
 {
  printf("Longest LINE IN THE PROGRAM is %d characters:\n%s", max, longest);
 }
 printf("\n");
 return 0;
}

/* getline: read a line into s, return length */
int getline(char s[], int line)
{
 int c, i, j;

 for(i = 0, j = 0; (c = getchar())!=EOF && c != '\n'; ++i)
 {
  if(i < line - 1)
  {
   s[j++] = c;
  }
 }
 if(c == '\n')
 {
  if(i <= line - 1)
  {
   s[j++] = c;
  }
  ++i;
 }
 s[j] = '\0';
 return i;
}

/* copy: copy 'from' into 'to'; assume 'to' is big enough */
void copy(char to[], char from[])
{
 int k;

 k = 0;
 while((to[k] = from[k]) != '\0')
 {
  ++k;
 }
}


Read more Similar C Programs
C Basic

K and R C Programs Exercise

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!

To browse more C Programs visit this link

K&R C Program Exercise 1-15

Rewrite the temperature conversion program (K&R C Program Exercise 1-03 ) to use a function for conversion. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .


/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/

#include "stdio.h"
float celsius(float fahr);
/* Print Fahrenheit-Celsius table
  for fahr=0, 20, . . , 300; float-point version  */
main()
{
 float fahr;
 int lower, upper, step;

 lower = 0;
 upper = 300;
 step = 20;

 fahr = lower;
 while(fahr <= upper)
 {

  printf("%3.0f %6.1f\n", fahr, celsius(fahr));
  fahr = fahr + step;
 }

}
/* celsius: convert fahr into celsius */
float celsius(float fahr)
{
 return (5.0 / 9.0) * (fahr - 32.0);
}
Read more Similar C Programs
C Basic

K and R C Programs Exercise

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!
To browse more C Programs visit this link

K&R C Program Exercise 1-14

K and R solutions to print a histogram of the frequencies of different characters in its input. K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. Read more about C Programming Language .



/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/


#include
#include

#define HISTLEN 15       /*max length of histogram */
#define CHARLENGTH 128      /*max different characters */

/* print horizontal histogram freq. of different characters */
main()
{
 int c,i;
 int len;   /*length of each bar   */
 int maxvalue;    /*maximum value for cc[]  */
 int cc[CHARLENGTH]; /*character counters*/

 for(i=0;imaxvalue)
   maxvalue=cc[i];
 for(i=1;i0) {
   if((len = cc[i]*HISTLEN/maxvalue)<=0)
    len=1;
  }
  else
   len=0;
  while(len>0)
  {
   putchar(*);
   --len;
  }
  putchar('\n');
 }
}
Read more Similar C Programs
C Basic

K and R C Programs Exercise

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!


To browse more C Programs visit this link

K&R C Program Exercise 1-13

K and R C Programs Exercises provides the solution to all the exercises in the C Programming Language, second addition, by Brian W.Keringhan and Dennis M.Ritchie(Prentice Hall,1988). You can learn and solve K&R C Programs Exercise. K and R solution to print a histogram of the lengths of words in its input. Read more about C Programming Language .

/***********************************************************
* You can use all the programs on  www.c-program-example.com
* for personal and learning purposes. For permissions to use the
* programs for commercial purposes,
* contact info@c-program-example.com
* To find more C programs, do visit www.c-program-example.com
* and browse!
* 
*                      Happy Coding
***********************************************************/



#include <stdio.h>

#define MAXLN 10

int main(void)
{
 int c;
 int inspace = 0;
 long lengtharr[MAXLN + 1];
 int wordlen = 0;

 int firstletter = 1;
 long value = 0;
 long maxval = 0;
 int index = 0;
 int done = 0;

 for(index = 0; index <= MAXLN; index++)
 {
  lengtharr[index] = 0;
 }

 while(done == 0)
 {
  c = getchar();

  if(c == ' ' || c == '\t' || c == '\n' || c == EOF)
  {
   if(inspace == 0)
   {
    firstletter = 0;
    inspace = 1;

    if(wordlen <= MAXLN)
    {
     if(wordlen > 0)
     {
      value = ++lengtharr[wordlen - 1];
      if(value > maxval)
      {
       maxval = value;
      }
     }
    }
    else
    {
     value = ++lengtharr[MAXLN];
     if(value > maxval)
     {
      maxval = value;
     }
    }
   }
   if(c == EOF)
   {
    done = 1;
   }
  }
  else
  {
   if(inspace == 1 || firstletter == 1)
   {
    wordlen = 0;
    firstletter = 0;
    inspace = 0;
   }
   ++wordlen;
  }
 }

 for(value = maxval; value > 0; value--)
 {
  printf("%4d  | ", value);
  for(index = 0; index <= MAXLN; index++)
  {
   if(lengtharr[index] >= value)
   {
    printf("*  ");
   }
   else
   {
    printf("   ");
   }
  }
  printf("\n");
 }
 printf("      +");
 for(index = 0; index <= MAXLN; index++)
 {
  printf("---");
 }
 printf("\n       ");
 for(index = 0; index < MAXLN; index++)
 {
  printf("%2d ", index + 1);
 }
 printf(">%d\n", MAXLN);

 return 0;
}
Read more Similar C Programs
C Basic

K and R C Programs Exercise

You can easily select the code by double clicking on the code area above.

To get regular updates on new C programs, you can

You can discuss these programs on our Facebook Page. Start a discussion right now,

our page!

Share this program with your Facebook friends now! by liking it


(you can send this program to your friend using this button)

Like to get updates right inside your feed reader? Grab our feed!

List of C Programs