勉強中に、理解できない構文に遭遇しました。
puts "He is %d (%3.2f in floating point terms) pounds heavy." % [weight, weight]
これについて私が理解していないことの1つは、の目的です3.2
。ご覧いただきありがとうございます。
PSちなみに、weight
変数はもともとポンドで定義されていました。
勉強中に、理解できない構文に遭遇しました。
puts "He is %d (%3.2f in floating point terms) pounds heavy." % [weight, weight]
これについて私が理解していないことの1つは、の目的です3.2
。ご覧いただきありがとうございます。
PSちなみに、weight
変数はもともとポンドで定義されていました。
この%n.mf
形式は、出力フィールド全体の幅がn
文字位置であり、小数点の後に表示される桁数が であることを意味しm
、必要に応じて数値の前に空白を埋めてフィールド全体を で完成させn
ます。0
表示可能な小数点以下の桁数を にする必要がある場合、小数点の右側に s が埋め込まれm
ます。
したがって、23.12
の形式の値は次の%8.3f
ように表示されますbb23.120
(ここで、それぞれb
は空白であり、実際には ではありませんb
)。のフォーマット%8.1f
はbbbb23.1
. のフォーマット%8.0f
はbbbbbb23
.
フォーマットされた数値が要求されたフィールド全体の幅よりも多くの文字になる場合、フィールドは数値を収容するために大きくされるだけであり、切り捨てられないことに注意してください。%3.2f
上記の例では、 forの形式で23.12
が得られ23.12
ます。
この%3.2f
場合、フィールド幅は小数点以下の桁数で指定さ3
れます。小数点以下の桁数はすでに文字位置を消費している2
ため、この形式で印刷される浮動小数点数は、先行する空白なしで完全に印刷されます。またはまたはを使用しても同じ結果が得られます。ただし、この形式では、桁を正確に表示するために、必要に応じて常に小数点以下の桁数が切り捨てられるか、ゼロが埋められます。2
3
%2.2f
%1.2f
%0.2f
2
2
%0.2f のように、必要な小数点以下の桁数を指定できます。
ここでの 2 は、小数点以下 2 桁だけを保持することを示しています。
以下に例を示します: スコア = 78.5431 puts "The average is %0.2f" % [score]
出力 => 平均は 78.54