プログラミングの為の数学と算数 vol.2at TECHプログラミングの為の数学と算数 vol.2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト443:434 06/03/10 19:59:13 いや、もしかして abs(x) の代わりに (x>>31)^x のようなのを使ってて出た誤差かな 444:デフォルトの名無しさん 06/03/10 20:05:54 (2*a + 2*a*a*b - b) / (2*b) + 1 - a*a 445:デフォルトの名無しさん 06/03/10 20:28:42 >>423 またおまえか。 446:423 06/03/10 21:07:51 みなさん、ありがとうございます。 とても参考になりました。 特に>>434さんの方法には脱帽しました。 異符号の場合に -1 と XOR して1の補数を用いるなんて思いもつきませんでした。 と言っても、まだ完全には理解できてはいないのですが 先にお礼を言っておきたかったので。 本当にありがとうございました。 447:434 06/03/10 21:28:04 ごめん。 変な方法使うより #include <stdlib.h> に div という関数がある 除算とあまりを出す関数だ div_t d=div(x+y/2,y); if(d.rem<0) d.quot--; で d.quot を使えばいい 条件判断を無くしたいなら d.quot+d.rem>>31 でいい たぶんコレが正解だろう 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch