最大三角形

 #include  <stdio.h> #include  <math.h>

int main(int argc, char *argv[]){
   
   float a, b, c, s, S, m;
   int i, j; //行番号カウンタ

   for(i=1; scanf("%f %f %f",&a, &b, &c)==3; i++){
       
       //面積計算
       s = (a + b + c) / 2.0;
       S = sqrt(s*(s-a)*(s-b)*(s-c));
       
       //最大値と行番号記録
	    if(m<S){
		    m= S;
		    j= i;
	    }

   }

   printf("%d\n",j);

   return 0;
}

与えられた3つの数値からできる三角形の面積を計算して最大値を調べて記録、最大値の行番号を出力

ヘロンの公式を参考

 #include  <math.h>
s = (a + b + c) / 2.0;
S  = sqrt(s*(s-a)*(s-b)*(s-c));


この記事が気に入ったらサポートをしてみませんか?