📄 sense.cpp
字号:
#include<stdio.h>
#include<math.h>
typedef struct sample
{
int x;
int y;
int z;
int k;
} SAMPLE;
int multiply(SAMPLE a,SAMPLE b)
{
int mul;
mul=a.x*b.x+a.y*b.y+a.z*b.z+a.k*b.k;
return mul;
}
SAMPLE add(SAMPLE a,SAMPLE b)
{
SAMPLE ad;
ad.x=a.x+b.x;
ad.y=a.y+b.y;
ad.z=a.z+b.z;
ad.k=a.k+b.k;
return ad;
}
void main()
{
SAMPLE point[8]={{0,0,0,1},{1,0,0,1},{1,0,1,1},{1,1,0,1},{0,0,-1,-1},{0,-1,-1,-1},{0,-1,0,-1},{-1,-1,-1,-1}};
SAMPLE weight={0,0,0,0};
SAMPLE p;
int c=1;
int m,f;
int i;
while(1)
{
f=0;
for(i=0;i<8;i++)
{
m=multiply(weight,point[i]);
if(m<=0)
{
p.x=c*point[i].x;
p.y=c*point[i].y;
p.z=c*point[i].z;
p.k=c*point[i].k;
weight=add(weight,p);
f++;
}
}
if(f==0)
break;
}
printf("weight=(%d,%d,%d,%d)\n",weight.x,weight.y,weight.z,weight.k);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -