[過去ログ] スレを勃てるまでもないC/C++の質問はここで 24 [転載禁止]©2ch.net (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
73(3): デフォルトの名無しさん [sage] 2015/12/12(土) 11:18:45.83 ID:ZIa921ni(1/3) AAS
符号つきint同士の除算で、結果を常に負の∞に向かって丸めるにはどのようにすればいいでしょうか?
ただし、除数は常に0より大きい数です。
75: 73 [sage] 2015/12/12(土) 12:05:54.12 ID:ZIa921ni(2/3) AAS
英語だと round toward minus infinity というところですか。
int同士の演算で丸めるというのが意味をなしていないのかもしれませんが、
結局は(実数としての)除算の結果を整数として得るのに−∞に近づくように、ということです。
79(2): デフォルトの名無しさん [sage] 2015/12/12(土) 16:41:35.71 ID:V2dsH5Kn(1) AAS
>>77
正整数同士の除算で端数は切り上げ、の応用技だね。
Nビットの情報を格納するのに必要なバイト数を求めるとき
ビット数に7を足してから8で割る感じ。
bytes = (bits + 7) / 8;
ところで、整数の除算で片方が負数の場合の結果は
「処理系定義」だって望洋さんのサイトに載ってる。
>>73 で除数は常に0より大きいと限定されてるから
被除数についての場合分け処理が必要になるかと。
81: 73 [sage] 2015/12/12(土) 18:45:47.78 ID:ZIa921ni(3/3) AAS
ある程度試したところ>>77のやり方でうまくいきました。
動く仕組みも>>79でだいたい掴めました。
ふたりともありがとうございます。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 2.124s