首页 > 编程知识 正文

空间向量数量积,向量数量积计算公式

时间:2023-05-05 13:23:38 阅读:285105 作者:4252

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2108

图一中,向量a × 向量 b    根据右手定则,得出向量c的方向。即为凸多边形。

图二中,若向量a × 向量 b  根据右手定则,则得出的向量d的方向,即为凹多边形。

又根据图一中,向量a × 向量 b为正,所以根据坐标得    (x[i+1]-x[i])*(y[i+2]-y[i])-(x[i+2]-x[i])*(y[i+1]-y[i]) > 0

代码:

#include<cstdio>int main (){ int n; int x[1001],y[1001]; while(scanf("%d",&n)!=EOF&&n) { for(int j=0;j<n;j++) scanf("%d %d",&x[j],&y[j]); x[n]=x[0]; x[n+1]=x[1]; y[n]=y[0]; y[n+1]=y[1]; int sum,i; for( i=0;i<n;i++) { sum=(x[i+1]-x[i])*(y[i+2]-y[i])-(x[i+2]-x[i])*(y[i+1]-y[i]); if(sum<0) break; } if(i!=n || sum<0) printf("concaven"); else printf("convexn"); }}

 

转载于:https://www.cnblogs.com/CheeseIce/p/9615363.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。