#include <stdio.h>
double max(double x, double y);
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(a
),cube
(b
))); return 0;
}
//二つの引数の大きい方の値を返す関数
double max(double x, double y)
{
//if (x > y) { return x;} else {return y;}
return (x>y)?x:y;
}
//引数の絶対値を返す関数
{
return (x>0)?x:-x;
}
//引数の三乗の値を返す関数
double cube(double x)
{
return x*x*x;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgpkb3VibGUgbWF4KGRvdWJsZSB4LCBkb3VibGUgeSk7CmRvdWJsZSBhYnMoZG91YmxlIHgpOwpkb3VibGUgY3ViZShkb3VibGUgeCk7CgoKLy9tYWlu6Zai5pWwCmludCBtYWluKHZvaWQpIAp7CiAgICBkb3VibGUgYSwgYjsKICAgIGEgPSAtMy4yOwogICAgYiA9IDEuNDsKICAgIHByaW50ZigibWF4KHwlbGZ8LCglbGYpXjMpPSVsZlxuIixhLGIsbWF4KGFicyhhKSxjdWJlKGIpKSk7CQoJcmV0dXJuIDA7Cn0KCi8v5LqM44Gk44Gu5byV5pWw44Gu5aSn44GN44GE5pa544Gu5YCk44KS6L+U44GZ6Zai5pWwCmRvdWJsZSBtYXgoZG91YmxlIHgsIGRvdWJsZSB5KQp7CgkvL2lmICh4ID4geSkgeyByZXR1cm4geDt9IGVsc2Uge3JldHVybiB5O30KCQogICAgcmV0dXJuICh4PnkpP3g6eTsKICAgIAogICAgCn0KCi8v5byV5pWw44Gu57W25a++5YCk44KS6L+U44GZ6Zai5pWwCmRvdWJsZSBhYnMoZG91YmxlIHgpCnsKICAgIHJldHVybiAoeD4wKT94Oi14Owp9CgovL+W8leaVsOOBruS4ieS5l+OBruWApOOCkui/lOOBmemWouaVsApkb3VibGUgY3ViZShkb3VibGUgeCkKewogICAgcmV0dXJuIHgqeCp4Owp9CgoKCg==