プログラミングの為の数学と算数 vol.2at TECHプログラミングの為の数学と算数 vol.2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト832:デフォルトの名無しさん 07/05/16 01:16:49 あ、途中でXがnになっちまった……。 nが負なら最後に1足してくんなまし。 833:デフォルトの名無しさん 07/05/16 07:36:56 >>830 Web上にある情報を、どれも正しいと思うな Q=trunc(X/D +0.5) と計算したい筈なのに m = 2*n-------------------1) R = (2^m - 1) / D ---------2) Q = (R * X + 2^n) >> m ------3) から>>m を2のベキに変更して Q = (R * X + 2^n)/2^m Rに代入して Q = ((2^m - 1) / D * X + 2^n)/2^m Q = (2^m - 1) /2^m * X/ D + 2^(n-m) ~~~~~~~~~~~~~~~~ ~~~~~~~ (2^m-1)/2^m は1ではない 2^(n-m) は 0.5 ではない これは単に使いたかった範囲で巧くいっただけだろ 834:デフォルトの名無しさん 07/05/16 11:48:36 >>831,832 ありがとうございます。 一応、プログラムを組んで実験してみたのですが、 違う結果しか得られませんでした。 自分の理解が足りていないのかもしれません。 チェック用プログラムをアップしますので、確認していただければ幸いです。 http://kissho.xii.jp/1/src/1jyou6388.lzh >>833 整数における割り算なので、やりたいのは四捨五入ではなく切り捨て、 つまりQ=trunc(X/D) です。 あと、使える値の範囲も>>830のページ上に書いてありますよ。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch