Machine Learning Lab

All Header+Program

All Program**

All Program Header**

KNN algorithm c code

#include <stdio.h>
#include <stdlib.h>
int K = 3 ;
int X1 = 4;
int X2 = 7;
int n;
int distance[30];
int Rank[30];

int cmpfunc (const void * a, const void * b)
{
return ( (int)a – (int)b );
}

int Color[30],Material[30],Classification[30];
int distance1[30];
void calculation()
{
printf(” \ndistance\n”);
for(int i = 0 ; i<n ; i++)
{

distance[i] = ((X1 – Color[i])(X1 – Color[i]))+(X2 – Material[i])(X2 – Material[i]);
distance1[i] = distance[i];
printf(“%d\n”,distance[i]);
}
}
void ClassificationCalculation()
{
printf(“\nClassification\n\n”);
for(int i = 0 ; i< n ; i++)
{
if(Rank[i] < 4)
printf(“%d\n”,Classification[i]);
else
printf(“Nothing\n”);

}
}

void RankCalculation()
{
printf(“\nRank\n”);
for(int i = 0 ; i< n ; i++)
{
for(int j = 0 ; j < n; j++)
if(distance1[i] == distance[j] )
{
Rank[i] = j+1;
printf(“\n%d”,Rank[i]);
break;
}

}

}
int main()
{
freopen(“input.txt”,”r”,stdin);

// printf(“Color Rank Classification\n”);

scanf(“%d”, &n);
for( int i = 0 ; i < n; i++ )
{
scanf(“%d”, &Color[i]);
scanf(“%d”, &Material[i]);
scanf(“%d”, &Classification[i]);

}
calculation();

qsort(distance, n, sizeof(int), cmpfunc);

RankCalculation();

ClassificationCalculation();
return(0);
}

 

input

 

4
2 4 1
3 2 0
5 4 1
6 7 0

 

 

output

output