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

조회 수: 74 (최근 30일)
MathWorks Support Team
MathWorks Support Team 2013년 10월 25일
편집: MathWorks Support Team 2018년 1월 9일
指定した桁数で小数の丸めを行うにはどうすればよいですか?

채택된 답변

MathWorks Support Team
MathWorks Support Team 2018년 1월 9일
편집: MathWorks Support Team 2018년 1월 9일
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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 算術演算에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!