#author("2023-10-13T02:50:22+09:00","default:kanateko","kanateko")
&tag(プラグイン,自作,追加);

// #ref(math.jpg,center,wrap,500x)

#contentsx

*数学関数を利用するプラグイン [#summary]

#infobox(plugin){{
name = math
ver = 1.0.0
pukiwiki = 1.5.4
update = 2023-10-10
}}

PHPで用意されている[[数学関数:https://www.php.net/manual/ja/ref.math.php]]を用いて様々な計算を行うプラグイン。

現状はすべてに対応しているわけではなく、なんとなく使いそうな関数にのみに対応している。入れ子での計算も可能なので、ある程度応用の幅が効く。

計算式を書いて計算したい場合は[[calcプラグイン>../calc]]を使う。

#box(label,label-style=full,box-color=blue,title=対応している関数){{
-abs:絶対値
-bindec:2 進数 を 10 進数に変換する
-ceil:端数の切り上げ
-cos:余弦(コサイン)
-decbin:10 進数を 2 進数に変換する
-dechex:10 進数を 16 進数に変換する
-decoct:10 進数を 8 進数に変換する
-deg2rad:度単位の数値をラジアン単位に変換する
-fdiv:IEEE 754 に従い、数値の除算を行う
-floor:端数の切り捨て
-fmod:引数で除算をした際の剰余を返す
-hypot:直角三角形の斜辺の長さを計算する
-intdiv:整数値の除算
-max:最大値を返す
-min:最小値を返す
-octdec:8 進数を 10 進数に変換する
-pi:円周率の値を得る
-pow:指数表現
-rad2deg:ラジアン単位の数値を度単位に変換する
-round:浮動小数点数を丸める
-sin:正弦(サイン)
-sqrt:平方根
-tan:正接(タンジェント)
}}

#clear

*ダウンロード [#download]
最新: [[GitHub>https://github.com/kanateko/pukiwiki-plugin]]

|~日付|~バージョン|~備考|h
|CENTER:120|CENTER:60|590|c
|2023-10-10|1.0.0|#ul(初版作成)|

*セットアップ [#setup]
+GitHubからダウンロードした「math.inc.php」をPukiWikiのpluginディレクトリに放り込む。

*プラグイン設定 [#setting]
#style(word-break:break-all;,class=table_compact){{{
#tableif(^(int|\d+)$=COLOR(#62bf4b),^string|'$|DIR \.=COLOR(#cb643d),^(bool|true|false)$=COLOR(#463dcb)){{
|~定数 (PLUGIN_MATH_~)|~型|~初期値|~説明|h
|BOLD:BGCOLOR(--table-header-td-color):180|CENTER:80|220||c
|DEFAULT_TYPE|string|'round'|デフォルトのタイプ (関数)|
|DEFAULT_PRECISION|int|2|デフォルトの小数点以下の桁数 (round, 区切り表示時のみ適用)|
|FORMAT_AS_DEFAULT|bool|false|数字をカンマ区切りで表示する|
}}
}}}

*使用方法 [#usage]
 &math(関数,小数点以下の桁数,カンマ区切り){数値};

**オプション [#option]
:関数|
使用する関数を指定する。対応している関数はページ上部を参照。指定しない場合はroundになる。
:小数点以下の桁数|
数値で指定する。指定しない場合、roundとカンマ区切り表示時には2桁まで表示される。それ以外では最後まで表示される。
:カンマ区切り|
''true''か''false''で指定する。デフォルトでは無効。
:数値|
計算に使用する数値を指定する。2個必要な場合はカンマで区切る。

*使用例 [#example]

-&math{0.266666}; = &math{0.266666};
-&math(sqrt, 4){12}; = &math(sqrt,4){12};
-&math(pow, 0, true){10, 4}; = &math(pow,0,true){10, 4};
-&math(pi); = &math(pi);
-&math(tan){&math(deg2rad){45};}; = &math(tan){&math(deg2rad){45};};

*備考 [#note]


*コメント [#comment]
#pcomment(reply)