请c++能手看看我写的这个程序,有错误

来源:百度知道 编辑:UC知道 时间:2024/09/21 10:37:59
我的题目是这样子的,已知平面上一些点,选出三个定点,求这三个定点外接圆和三角形的面积之差最小的值。
就是所有给的点,都得求过这三点的圆和三点组成的三角形面积的差,再在差里面找到最小值
我做了前面一步,求任意三点的三角形面积,高手能帮忙看看错误在哪里么,我这c++水平太有限

include <iostream>
using namespace std;

void main()
{
int i,k,j;
int a[n][2];//已知给了多少个点
int M[a,b],N[c,d],F[e,f]//选出来求面积的三个点
cout<<"n=";
cin>>n>>endl;
for(i=0;i<n;i++)
{
cin>>a[n][2]>>endl;//输入那些已知点
}
for(i=0;i<n;i++)
{
M=a[i][2];
cout<<a[i][2]<<endl;
for(k=i+1;k<n;k++)
{
N=a[k][2];
cout<<a[k][2]<<endl;
for(j=k+1;j<n;j++)
{F=a[j][2];
cout<<a[j][2]<<endl;
S=(ad+be+cf-af-bc-de)/2 ;//利用三个点的坐标求面积
cout<<"S="<<S<

问一下,你的程序前面的前面的空白是什么字符?
int M[a,b],N[c,d],F[e,f]//选出来求面积的三个点,这句也不对。改为:
int aa[n][2];//已知给了多少个点

int a,b,c,d,e,f;
M=a[i][2];这句能通过吗?应该为:
a=aa[i][0];b=aa[i][1];

程式语法错很多,(譬如阵列宣告 还有void main()不用回传值...int main()才需要return,重新修改后的程式码
如果由多个点求三个点构成最小的外接圆与三角形面积差,感觉会很复杂...
3个点就一个3个点组合 4个点四个 五个点10个 六个点20个....
--------------------------
#include <iostream.h>
#include <cmath>

void main()
{
int i;
char *integer[]={"一","二","三"};
int a[3][2];
//已知给了3个点
//第一个点/第二个点/第三个点
//a[0,0] /a[1,0] /a[2,0]=X
//a[0,1] /a[1,1] /a[2,1]=Y
//选出来求面积的三个点

double length[3],p,s;

for(i=0;i<3;i++)
{
cout<<"\n输入第"<<integer[i]<<"个点:\n";
cout<<"X座标为:";
cin>>a[i][0];
cout<<"Y座标为:";
cin>>a[i][1];