C++ で Setprecision を使用する方法

C De Setprecision Wo Shi Yongsuru Fang Fa



数学や物理学で浮動小数点値や科学表記法を学び、研究したことがあるかもしれません。浮動小数点数の四捨五入の実行方法も学んだかもしれません。 C++ の setprecision ユーティリティは、浮動小数点整数出力シーケンス内に表示される数値シーケンスを変更するためによく使用されます。これは四捨五入機能と同じように機能します。このメソッドは、 標準ライブラリで定義されています。このチュートリアルでは、C++ の「setprecision」関数の使用方法を説明します。それでは、始めましょう。 Ubuntu シェル アプリケーションを作業するには、「Ctrl+Alt+T」を使用して起動する必要があります。 C++ コンパイラー (この場合は g++) のインストールを初期化する必要があります。したがって、これまでのところ、この目的には apt パッケージが利用されます。システムはわずか数秒で g++ をインストールします。 $ 須藤 適切な インストール g++

例01:

そこで、「nano」命令で「new.cc」ファイルを開きました。このファイルは、シェルの「タッチ」クエリを使用して作成されます。ファイルは nano エディターで空のファイルとして起動されます。入出力「iostream」ヘッダー ファイルを先頭に追加しました。コードの setprecision() メソッドを使用するために「iomanip」ライブラリが追加されました。この後、標準の名前空間「std」を利用して、標準的なコードと構文を使用していることを確認しました。コード全体は、C++ コードの main() 関数内で実行されています。この目的のために他のユーザー定義関数は使用されません。







main() 関数内で、double 型変数「v」を double 値で初期化しました。最初の「cout」標準ステートメントは、シェル上の実際の double 変数値「v」を更新せずに表示します。この後、8 つの cout ステートメントを使用して、それぞれで setprecision() メソッドを利用しました。これは、「v」変数の各浮動小数点に毎回 setprecision() を適用するためです。 setprecision は 5 以上の値に対してのみ機能することを理解する必要があります。浮動小数点値が 5 より大きい場合は、その前の値がインクリメントされます。



たとえば、1 番目の浮動小数点の setprecision() は、小数点以降の「5」を四捨五入し、値「4」を 5 に変換します。同様に、2 番目の浮動小数点値「2」は四捨五入できません。 3 番目の浮動小数点値「7」は値「2」を「3」に変換します。4 番目の浮動小数点値「4」は四捨五入できません。5 番目の浮動小数点値「9」は値「4」を変換します。 」その前に5まで。 「0」ポイントでは、値「4」が 5 に変換されます。負の setprecision() は、実際の値全体を表示するだけで何も行いません。 setprecision() を適用すると、浮動小数点 0 ~ 5 および -1、-2 のすべての値が表示されます。







g++ コンパイル クエリと「./a.out」実行クエリを使用して setprecision C++ コードをコンパイルして実行します。出力は、最初の setprecision(1) が 4 を 5 に変換することを示しています。setprecision(2) は何も行わず、「4.5」と表示されます。 setprecision(3) は値を「4.52」から「4.53」にインクリメントしました。 setprecision(4) は値「4.527」に対して何も行いません。 setprecision(5) は、値を「4.5274」から「4.5275」にインクリメントします。 setprecision(0) は値を 5 にインクリメントしました。 setprecision(-1) と setprecision(-2) は以下に示すように何も行いませんでした。

$ g++ 新しい.cc

$。 / アウト



例02:

別の例を見てみましょう。コードは上記の例に似ていますが、cout ステートメントが変更されているだけです。最初の出力は元の値を示し、次の 2 つは浮動小数点 1 と 5 での setprecision() の結果を示します。最後の出力は浮動小数点 9 での setprecision() メソッドの結果を表示しますが、これは物理的に使用できません。浮動小数点 1 と 5 の結果は非常に予想通りですが、浮動小数点 9 については何も言えません。ファイルを実行して、このコードの出力がどのようになるかを確認してみましょう。

#include

#include

を使用して 名前空間 標準 ;

整数 主要 ( {

ダブル = 4.52749 ;

コート << 「設定前の値の精度:」 << << ' \n ' ;

コート << 設定精度 ( 1 << 「ヴァル1:」 << << ' \n ' ;

コート << 設定精度 ( 5 << 「5時のヴァル:」 << << ' \n ' ;

コート << 設定精度 ( 9 << 「9時のヴァル:」 << << ' \n ' ;

戻る 0 ;

}

このコードをコンパイルして実行すると、浮動小数点値「4.52749」の位置 1 と 3 での setprecision の明らかな結果が得られます。 setprecision 9 の結果は、double 変数「v」の実際の値を示します。これは、位置 9 の値が固定されていないことが原因である可能性があります。

$ g++ 新しい.cc

$。 / アウト

コードを再度更新して、変数「v」の値を修正しましょう。したがって、最初の setprecision() cout ステートメントが変数の 1 番目の位置に適用された後、cout で固定変数を使用しました。

#include

#include

を使用して 名前空間 標準 ;

整数 主要 ( ) {

ダブル = 4.52749 ;

コート << 「設定前の値の精度:」 << << ' \n ' ;

コート << 設定精度 ( 1 ) << 「ヴァル1:」 << << ' \n ' ;

コート << 修理済み ;

コート << 設定精度 ( 5 ) << 「5時のヴァル:」 << << ' \n ' ;

コート << 設定精度 ( 9 ) << 「9時のヴァル:」 << << ' \n ' ;

戻る 0 ;

}

この更新されたコードをコンパイルして実行すると、変数「v」の位置 9 で setprecision の修正結果、つまり 4.527490000 が得られます。

$ g++ 新しい.cc

$。 / アウト

結論:

最後に、C++ コードで setprecision() メソッドを使用して double 変数の値を四捨五入して表示する方法について説明しました。コード内の固定変数とその利点についても説明しました。さらに、C++ のセット精度の概念を説明するために 2 つの重要な例を実装しました。この記事がお役に立てば幸いです。さらに多くのヒントやチュートリアルについては、他の Linux ヒントの記事を参照してください。