當前位置:編程學習大全網 - 編程軟體 - 國家規劃

國家規劃

按逆時針順序輸入邊數n以及多邊形每個頂點的X和Y坐標(以確保叉積為正)。

從每個頂點的x和y坐標中減去a[0][0]。基於a[0][0]計算每個三角形的面積並累加。

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

主( )

{

int i,j,n;

雙s = 0;

雙a[15][2];

scanf("%d ",& ampn);

for(I = 0;我& ltn;i++)

for(j = 0;j & lt2;j++)

scanf("%lf ",& ampa[I][j]);

for(I = 0;我& ltn;i++)

for(j = 0;j & lt2;j++)

a[I][j]= a[I][j]-a[0][0];

for(I = 1;我& ltn-1;i++)

{

s = s+0.5 *(a[I][0]* a[I+1][1]-a[I+1][0]* a[I][1]);

}

printf("%.2lf ",s);

返回0;

}

近距離提問

測試數據1輸出錯誤。

錯誤輸出:

1.00

預期產出:

5.00

測試數據2輸出錯誤

錯誤輸出:

-10000.00

預期產出:

15000.00

測試數據3輸出錯誤

錯誤輸出:

-1067.50

預期產出:

984.50

測試數據4輸出錯誤

測試數據5輸出錯誤

錯誤輸出:

-1000.00

預期產出:

1100.00

這都是錯的

壹個接壹個的回答

//修正:a[I][j]= a[I][j]-a[0][j];

//不是壹個[0][0],而是壹個[0][j]

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

main( ){int i,j,n;

雙s = 0;雙a[15][2];

scanf("%d ",& ampn);

for(I = 0;我& ltn;i++)

for(j = 0;j & lt2;j++)

scanf("%lf ",& ampa[I][j]);

for(I = 1;我& ltn;i++)

for(j = 0;j & lt2;j++)

a[I][j]= a[I][j]-a[0][j];

for(I = 1;我& ltn-1;i++){

s = s+0.5 *(a[I][0]* a[I+1][1]-a[I+1][0]* a[I][1]);

}

printf("%.2lf ",s);

返回0;

}

  • 上一篇:1、 編程實現用戶登錄問題,如果用戶名和密碼都輸入正確,則提示“歡迎登陸!”,假定用戶名為’h’,密碼
  • 下一篇:單片機C語言,求幫助,用壹個開關控制單壹燈的左移右移,開關按下燈右移,正常左移
  • copyright 2024編程學習大全網