【C言語】 ceil関数を自作する方法を初心者向けにわかりやすく解説

ceil関数は、与えられた浮動小数点数を切り上げて整数に変換する関数です。

この記事では、C言語でceil関数を自作する方法について解説します。

目次から探す

ceil関数の概要

ceil関数は、与えられた浮動小数点数を切り上げて整数に変換する関数です。

例えば、3.2をceil関数に渡すと4が返されます。

ceil関数は、math.hヘッダーファイルに定義されており、以下のようなプロトタイプ宣言を持っています。


double ceil(double x);

引数として与えられた浮動小数点数xを切り上げた結果を返します。

ceil関数の実装方法

ceil関数は、与えられた浮動小数点数を切り上げて整数に変換する関数です。

C言語の標準ライブラリには、このceil関数が用意されていますが、今回は自分でceil関数を実装する方法について説明します。

ceil関数を実装するためには、以下の手順を踏む必要があります。

  1. 引数として与えられた浮動小数点数を取得します。
  2. 取得した浮動小数点数が整数であるかどうかを判定します。

もし整数であれば、そのまま返します。

  1. 整数でない場合、小数点以下の値があることを意味します。

この場合、整数部分を1増やして切り上げます。

  1. 切り上げた整数を返します。

以下に、ceil関数の実装例を示します。


#include <stdio.h>
int ceil_func(float num) {
    int int_num = (int)num; // 引数の整数部分を取得
    if (num == int_num) { // 引数が整数である場合
        return int_num; // 整数をそのまま返す
    } else { // 引数が小数を含む場合
        return int_num + 1; // 整数部分を1増やして切り上げる
    }
}
int main() {
    float num = 3.7;
    int result = ceil_func(num);
    printf("切り上げ結果: %d\n", result);
    return 0;
}

上記のコードでは、ceil_funcという関数を定義しています。

この関数は、引数として与えられた浮動小数点数を切り上げて整数に変換し、その結果を返します。

main関数では、ceil_func関数を使用して3.7を切り上げています。

実行結果は以下の通りです。

切り上げ結果: 4

このように、ceil関数を自作することで、与えられた浮動小数点数を切り上げて整数に変換することができます。

目次から探す