指定した桁数で小数の​丸めを行うにはどうす​ればよいですか?

74 vues (au cours des 30 derniers jours)
MathWorks Support Team
MathWorks Support Team le 25 Oct 2013
指定した桁数で小数の丸めを行うにはどうすればよいですか?

Réponse acceptée

MathWorks Support Team
MathWorks Support Team le 9 Jan 2018
Modifié(e) : MathWorks Support Team le 9 Jan 2018
R2014b 以降のバージョンであれば round 関数の追加引数で桁数を指定しての丸め処理を実行できます。
例えば、小数点以下 3 桁にする場合、以下のように実行します。
 
>> Y = round(pi,3)
ans =
3.1420
R2014a 以前のバージョンで小数第 n 桁で丸めを行う場合、小数点を 10^(n-1) 分移動させて丸めを行った後、小数点を元の位置まで戻すことで実現できます。例えば、小数第 3 桁を四捨五入で丸める場合、round 関数を利用して以下のように実行します。
 
>> % 12.34567 → 1234.567にしてroundを実行してから小数点を元に戻す
>> n = 3;
>> unit = 10^(n-1);
>> (round(12.34567 * unit)) / unit
ans =
12.3500
round 関数以外にも、floor、ceil、fix の丸めを行う関数で上記方法が使用できます。これらのプログラムを MATLABファンクションファイルにしたものを、ページ下部の関連ドキュメントよりダウンロードできます。
指定した桁で四捨五入:decround.m
指定した桁で負の無限大方向へ丸め:decfloor.m
指定した桁で正の無限大方向へ丸め:decceil.m
指定した桁でゼロ方向へ丸め:decfix.m
(注意)ファイルのダウンロードはダウンロード対象のリンクを右クリックし「対象をファイルに保存」を選択してダウンロードを行ってください。
サンプルプログラムでは第一入力引数に小数を入力し、第二入力引数に桁数を指定します。
●実行例(小数第3桁で四捨五入)
>> decround(12.34567,3)
ans =
12.3500

Plus de réponses (0)

Catégories

En savoir plus sur 算術演算 dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!