#include <stdio.h> // math.hなどの必要なライブラリも使用可能
// プロトタイプ宣言
double max(double x, double y);
double abs_val(double x);
double cube(double x);
// C言語標準のabs関数との衝突を防ぐため名称を変更
// 1. main関数を一番上に配置
int main(void) {
double a, b;
a = 3.2;
b = -1.4;
printf("max(|%.1f|, (%.1f)^3) = %.1f\n", a
, b
, max
(abs_val
(a
), cube
(b
))); return 0;
}
// 二つの引数の大きい方の値を返す関数(double型)
double max(double x, double y) {
return (x > y) ? x : y;
}
// 引数の絶対値を返す関数(double型)
double abs_val(double x) {
return (x > 0) ? x : -x;
}
// 引数の三乗の値を返す関数(double型)
double cube(double x) {
return x * x * x;
}
I2luY2x1ZGUgPHN0ZGlvLmg+IC8vIG1hdGguaOOBquOBqeOBruW/heimgeOBquODqeOCpOODluODqeODquOCguS9v+eUqOWPr+iDvQoKLy8g44OX44Ot44OI44K/44Kk44OX5a6j6KiACmRvdWJsZSBtYXgoZG91YmxlIHgsIGRvdWJsZSB5KTsKZG91YmxlIGFic192YWwoZG91YmxlIHgpOyAKZG91YmxlIGN1YmUoZG91YmxlIHgpOwovLyBD6KiA6Kqe5qiZ5rqW44GuYWJz6Zai5pWw44Go44Gu6KGd56qB44KS6Ziy44GQ44Gf44KB5ZCN56ew44KS5aSJ5pu0Ci8vIDEuIG1haW7plqLmlbDjgpLkuIDnlarkuIrjgavphY3nva4KaW50IG1haW4odm9pZCkgewogICAgZG91YmxlIGEsIGI7CiAgICBhID0gMy4yOwogICAgYiA9IC0xLjQ7CgogICAgcHJpbnRmKCJtYXgofCUuMWZ8LCAoJS4xZileMykgPSAlLjFmXG4iLCBhLCBiLCBtYXgoYWJzX3ZhbChhKSwgY3ViZShiKSkpOwogICAgcmV0dXJuIDA7Cn0KCi8vIOS6jOOBpOOBruW8leaVsOOBruWkp+OBjeOBhOaWueOBruWApOOCkui/lOOBmemWouaVsO+8iGRvdWJsZeWei++8iQpkb3VibGUgbWF4KGRvdWJsZSB4LCBkb3VibGUgeSkgewogICAgcmV0dXJuICh4ID4geSkgPyB4IDogeTsKfQoKLy8g5byV5pWw44Gu57W25a++5YCk44KS6L+U44GZ6Zai5pWw77yIZG91Ymxl5Z6L77yJCmRvdWJsZSBhYnNfdmFsKGRvdWJsZSB4KSB7CiAgICByZXR1cm4gKHggPiAwKSA/IHggOiAteDsKfQoKLy8g5byV5pWw44Gu5LiJ5LmX44Gu5YCk44KS6L+U44GZ6Zai5pWw77yIZG91Ymxl5Z6L77yJCmRvdWJsZSBjdWJlKGRvdWJsZSB4KSB7CiAgICByZXR1cm4geCAqIHggKiB4Owp9