⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ganzhiqi.cpp

📁 模式识别中关于感知器算法的程序,输入点进行聚类.
💻 CPP
字号:
#include "stdio.h"
#include "math.h"


int x[15][3],y[4][2];
float w[3],w1[3];
float m,d;
int i,j,k,a,b;
void chushihua()
{
for(i=0;i<15;i++)
  //for(j=0;j<3;j++)
     x[i][2]=1;
for(i=0;i<3;i++)
 w1[i]=1;

x[0][0]=180;    x[0][1]=80;   
x[1][0]=-158;    x[1][1]=-46; x[1][2]=-1;  
x[2][0]=184;    x[2][1]=78;   
x[3][0]=-156;    x[3][1]=-45; x[3][2]=-1; 
x[4][0]=178;    x[4][1]=75;   
x[5][0]=182;    x[5][1]=74;   
x[6][0]=190;    x[6][1]=81;   
x[7][0]=-158;    x[7][1]=-46;  x[7][2]=-1;
x[8][0]=-155;    x[8][1]=-42;  x[8][2]=-1;
x[9][0]=-159;    x[9][1]=-44;  x[9][2]=-1;
x[10][0]=179;   x[10][1]=63;  
x[11][0]=-156;   x[11][1]=-47; x[11][2]=-1;
x[12][0]=-157;   x[12][1]=-48; x[12][2]=-1;
x[13][0]=179;   x[13][1]=70;  
x[14][0]=-154;   x[14][1]=-50; x[13][2]=-1;

y[0][0]=150;   y[0][1]=40;  
y[1][0]=180;   y[1][1]=76;  
y[2][0]=153;   y[2][1]=45; 
y[3][0]=185;   y[3][1]=75;  
}
int test()
{ int b=0;
   for(i=0;i<15;i++)
   {d=0;
    for(j=0;j<3;j++)
	{m=x[i][j]*w1[j];
	 d=d+m;
	}  
	if(d>0) b++;
   
   } 
  if(b==15) return 1;
    else return 0;
} 
 
void ganzhiqi()
{  int flag=0;
	while(flag==0) { 
        for(i=0;i<15;i++)
		{d=0;
         for(j=0;j<3;j++)
		 {m=x[i][j]*w1[j];   //temp=x[i][j]*w[j];
	        d=d+m;
		 } 
	      if(d>0) 
		  { for(k=0;k<3;k++)   
		     w1[k]=w[k];}
	         else{for(k=0;k<3;k++)
			 {w1[k]=w[k]+x[i][k];
	          w[k]=w1[k];}
			 }//else
	  
		}//for
		flag=test();
	} 
}
void main()
{
  chushihua();
  ganzhiqi();
printf("已知的模式向量:\n");
printf("篮球运动员:\n");
for (i=0;i<15;i++)
{ if(x[i][0]>0)
  printf("x[%d]: %d %d\n",i,x[i][0],x[i][1]);

}
printf("体操运动员:\n");
for (i=0;i<15;i++)
{ if(x[i][0]<0)
  printf("x[%d]: %d %d\n",i,-x[i][0],-x[i][1]);

}
printf("待分类的模式向量:\n");
for (i=0;i<4;i++)
{
printf("y[%d]: %d %d\n",i,y[i][0],y[i][1]);

}




for(i=0;i<4;i++)
		{d=0;
         for(j=0;j<3;j++)
		 {m=y[i][j]*w1[j];
	        d=d+m;
		 } 
	      if(d>0) printf("%d号运动员属于篮球运动员\n",i);
		   else printf("%d号运动员属于体操运动员\n",i);
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -