#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(|%f|,(%f)^3)=%f\n", a
, b
, max
(abs(a
), cube
(b
)));
return 0;
}
// 二つの引数の大きい方の値を返す関数
double max(double x, double y) {
return (x > y) ? x : y;
}
// 引数の絶対値を返す関数
return (x > 0) ? x : -x;
}
// 引数の三乗の値を返す関数
double cube(double x) {
return x * x * x;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgpkb3VibGUgbWF4KGRvdWJsZSB4LCBkb3VibGUgeSk7CmRvdWJsZSBhYnMoZG91YmxlIHgpOwpkb3VibGUgY3ViZShkb3VibGUgeCk7CgovLyBtYWlu6Zai5pWwCmludCBtYWluKHZvaWQpIHsKICAgIGRvdWJsZSBhLCBiOwogICAgYSA9IC0zLjI7CiAgICBiID0gMS40OwoKICAgIHByaW50ZigibWF4KHwlZnwsKCVmKV4zKT0lZlxuIiwgYSwgYiwgbWF4KGFicyhhKSwgY3ViZShiKSkpOwoKICAgIHJldHVybiAwOwp9CgovLyDkuozjgaTjga7lvJXmlbDjga7lpKfjgY3jgYTmlrnjga7lgKTjgpLov5TjgZnplqLmlbAKZG91YmxlIG1heChkb3VibGUgeCwgZG91YmxlIHkpIHsKICAgIHJldHVybiAoeCA+IHkpID8geCA6IHk7Cn0KCi8vIOW8leaVsOOBrue1tuWvvuWApOOCkui/lOOBmemWouaVsApkb3VibGUgYWJzKGRvdWJsZSB4KSB7CiAgICByZXR1cm4gKHggPiAwKSA/IHggOiAteDsKfQoKLy8g5byV5pWw44Gu5LiJ5LmX44Gu5YCk44KS6L+U44GZ6Zai5pWwCmRvdWJsZSBjdWJlKGRvdWJsZSB4KSB7CiAgICByZXR1cm4geCAqIHggKiB4Owp9Cgo=