#include <stdio.h>
double max(double x, double y);
double abs_double(double x);
double cube(double x);
//main関数
int main(void) {
double a, b;
a = -3.2;
b = 1.4;
printf("max(|%lf|,(%lf)^3)=%lf\n", a
, b
, max
(abs_double
(a
), cube
(b
))); return 0;
}
//二つの引数の大きい方の値を返す関数
double max(double x, double y){
return (x > y) ? x : y;
}
//引数の絶対値を返す関数
double abs_double(double x){
return (x > 0) ? x : -x;
}
//引数の三乗の値を返す関数
double cube(double x){
return x * x * x;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmRvdWJsZSBtYXgoZG91YmxlIHgsIGRvdWJsZSB5KTsKZG91YmxlIGFic19kb3VibGUoZG91YmxlIHgpOwpkb3VibGUgY3ViZShkb3VibGUgeCk7CgovL21haW7plqLmlbAKaW50IG1haW4odm9pZCkgewogICBkb3VibGUgYSwgYjsKICAgYSA9IC0zLjI7CiAgIGIgPSAxLjQ7CiAgIHByaW50ZigibWF4KHwlbGZ8LCglbGYpXjMpPSVsZlxuIiwgYSwgYiwgbWF4KGFic19kb3VibGUoYSksIGN1YmUoYikpKTsJCiAgIHJldHVybiAwOwp9CgovL+S6jOOBpOOBruW8leaVsOOBruWkp+OBjeOBhOaWueOBruWApOOCkui/lOOBmemWouaVsApkb3VibGUgbWF4KGRvdWJsZSB4LCBkb3VibGUgeSl7CiAgICByZXR1cm4gKHggPiB5KSA/IHggOiB5Owp9CgovL+W8leaVsOOBrue1tuWvvuWApOOCkui/lOOBmemWouaVsApkb3VibGUgYWJzX2RvdWJsZShkb3VibGUgeCl7CiAgICByZXR1cm4gKHggPiAwKSA/IHggOiAteDsKfQoKLy/lvJXmlbDjga7kuInkuZfjga7lgKTjgpLov5TjgZnplqLmlbAKZG91YmxlIGN1YmUoZG91YmxlIHgpewogICAgcmV0dXJuIHggKiB4ICogeDsKfQo=