質問

例えば、

int result;

result = 125/100;

または

result = 43/100;

結果を常に意の階の部?何は確定的に振る舞えるのでしょうか?

役に立ちましたか?

解決

結果を常に意の階の部?何は確定的に振る舞えるのでしょうか?

あり商の整数のオペランドとなります。

6.5.5相乗者

6 の場合整数の分割を果のオペレーターの代数的商せ 小数部が破棄されます。88) の場合は商a/bはrepresentableの表現 (a/b)*b+a%bは等しい。

に対応する脚注:

88)と呼ばれる"前方一致に向けてゼロ"にす

もちろん二の注意点:

3 通常の算術演算変換を行いますのオペランドとなります。

と:

5 結果のオペレーターの 商からの部門の 最初のオペランドによる第二;の の結果%【オペレーターの おります。 両事業の場合、 値の二つ目のオペランドがゼロ の挙動については、定義されていません。

【ご注意:重山】

他のヒント

結果が否定的である

、Cの切り捨て0に向けてではなくフローリングより - 私はいつも床ここになぜPythonの整数の除算については、この読書を学んだ:<のhref = "http://python-history.blogspot.com/2010/08 /why-pythons-integer-division-floors.html」のrel = "noreferrer">なぜPythonの整数除算床の

がはい、結果は常にゼロに向かって切り捨てられます。これは、最小の絶対値の方に丸めます。

-5 / 2 = -2
 5 / 2 =  2

符号なしおよび非負符号付きの値については、これは床(-Infinityに向かって丸め)と同じである。

  

部門の床になり、常に結果のでしょうか?

はありません。結果は変化するが、変化量が負の値に対してのみ発生します。

  

タグ?定義された行動とは何ですか

は、負の無限大に向かって明確な床ラウンドを行うために、一方に向かって整数の除算の丸めゼロ(トランケート)

正の値の場合、彼らは同じです。

int integerDivisionResultPositive= 125/100;//= 1
double flooringResultPositive= floor(125.0/100.0);//=1.0

負の値の場合、これは異なっている

int integerDivisionResultNegative= -125/100;//=-1
double flooringResultNegative= floor(-125.0/100.0);//=-2.0
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top