Luogu 問題作成 C++ 言語 | P5735 距離関数

幼い頃からC++を学びましょう!Luogu C++ の学習および試験準備プロセス中に尋ねられた質問をすべて記録し、あらゆる瞬間を記録します。

まとめ記事を添付します:LuoguのC++言語 | まとめ_プログラミング大好きコミュニケーターのブログ - CSDNブログ


【説明】

平面上の直線上にない 3 点の座標 ( x 1, y 1)、( x 2, y 2)、( x 3, y 3) が与えられたとき、その座標値は実数であり、絶対値は 100.00 を超えない 検索 囲まれた三角形の周囲長。小数点第2位を四捨五入します。

平面上の2 点 ( x 1, y 1)、( x 2, y 2) の場合、2 点間の距離

【入力】

3 行を入力します。i 番目の行は、スペースで区切られた 座標 ( xi , yi ) を表します。

【出力】

これら 3 つの座標で囲まれた三角形の周囲長を表す小数点以下 2 位の値を出力します。

【入力例】

0 0
0 3
4 0

【出力例】

12.00

【コード説明】

#include <bits/stdc++.h>
using namespace std;
double dis(double x1, double y1, double x2, double y2);
int main()
{
    double x1, x2, x3, y1, y2, y3, ab, ac, bc, ans;
    cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
    ab = dis(x1, y1, x2, y2);
    ac = dis(x1, y1, x3, y3);
    bc = dis(x2, y2, x3, y3);
    ans = ab + ac + bc;
    printf("%.2f", ans);
    return 0;
}
double dis(double x1, double y1, double x2, double y2) 
{
    double ans;
    ans = (x1-x2)*(x1-x2) + (y1-y2)*(y1-y2);
    ans = sqrt(ans);
    return ans;
}

【コード実行中】

0 0
0 3
4 0
12.00

おすすめ

転載: blog.csdn.net/guolianggsta/article/details/132788641