#include <stdio.h>
#include <math.h>
struct Coordinate {
double x;
double y;
double z;
};
int main() {
struct Coordinate A = {1.0, 5.0, 2.0};
struct Coordinate B = {5.0, 3.0, 1.0};
struct Coordinate C = {2.0, 8.0, 4.0};
struct Coordinate origin = {0.0, 0.0, 0.0};
double distAB, distCO;
distAB
= sqrt(pow(B.
x - A.
x, 2) + pow(B.
y - A.
y, 2) + pow(B.
z - A.
z, 2));
distCO
= sqrt(pow(C.
x - origin.
x, 2) + pow(C.
y - origin.
y, 2) + pow(C.
z - origin.
z, 2));
printf("点A-B間の距離: %f\n", distAB
); printf("点C-原点間の距離: %f\n", distCO
);
if (distAB > distCO) {
printf("長い方の距離は 点A-B間 で、値は %f です。\n", distAB
); } else {
printf("長い方の距離は 点C-原点間 で、値は %f です。\n", distCO
); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+IApzdHJ1Y3QgQ29vcmRpbmF0ZSB7CiAgICBkb3VibGUgeDsKICAgIGRvdWJsZSB5OwogICAgZG91YmxlIHo7Cn07CgppbnQgbWFpbigpIHsKICAgIAogICAgc3RydWN0IENvb3JkaW5hdGUgQSA9IHsxLjAsIDUuMCwgMi4wfTsKICAgIHN0cnVjdCBDb29yZGluYXRlIEIgPSB7NS4wLCAzLjAsIDEuMH07CiAgICBzdHJ1Y3QgQ29vcmRpbmF0ZSBDID0gezIuMCwgOC4wLCA0LjB9OwogICAgc3RydWN0IENvb3JkaW5hdGUgb3JpZ2luID0gezAuMCwgMC4wLCAwLjB9OyAKCiAgICBkb3VibGUgZGlzdEFCLCBkaXN0Q087CgogICAgCiAgICBkaXN0QUIgPSBzcXJ0KHBvdyhCLnggLSBBLngsIDIpICsgcG93KEIueSAtIEEueSwgMikgKyBwb3coQi56IC0gQS56LCAyKSk7CgogICAgCiAgICBkaXN0Q08gPSBzcXJ0KHBvdyhDLnggLSBvcmlnaW4ueCwgMikgKyBwb3coQy55IC0gb3JpZ2luLnksIDIpICsgcG93KEMueiAtIG9yaWdpbi56LCAyKSk7CgogICAgCiAgICBwcmludGYoIueCuUEtQumWk+OBrui3nembojogJWZcbiIsIGRpc3RBQik7CiAgICBwcmludGYoIueCuUMt5Y6f54K56ZaT44Gu6Led6ZuiOiAlZlxuIiwgZGlzdENPKTsKCiAgICBpZiAoZGlzdEFCID4gZGlzdENPKSB7CiAgICAgICAgcHJpbnRmKCLplbfjgYTmlrnjga7ot53pm6Ljga8g54K5QS1C6ZaTIOOBp+OAgeWApOOBryAlZiDjgafjgZnjgIJcbiIsIGRpc3RBQik7CiAgICB9IGVsc2UgewogICAgICAgIHByaW50Zigi6ZW344GE5pa544Gu6Led6Zui44GvIOeCuUMt5Y6f54K56ZaTIOOBp+OAgeWApOOBryAlZiDjgafjgZnjgIJcbiIsIGRpc3RDTyk7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=