pow関数の第二引数にマイナスの値を指定すると。


投稿ツリー



前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2010/6/30 21:45
sins666 
std.mathのpow関数の第二引数にマイナスの値を指定すると、
object.Error: Integer Divide by Zero
が発生します、これってバグでしょうか???

個人的には、pow(2, -1)などとすると-0.5が帰ってきて欲しいのですが…。エラー文によるとゼロでの割り算が生じているとのことですので、pow関数内で何らかのバグがあると思うのですが。
投票数:69 平均点:4.93
返信する
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2010/7/5 1:10
SHOO  管理人   投稿数: 658
おそらく整数での演算を行っているからだと思います。
#code(d,nooutline,notitle,nonumber){{{
pow(2.0, -1)
}}}
このように、doubleで渡すことで戻り値もdoubleになり、0.5が返ります。

また、D言語では ^^ がpowの演算を行う演算子となっていますので

#code(d,nooutline,notitle,nonumber){{{
import std.stdio;
void main()
{
writeln(2.0 ^^ -1);
}
}}}
こんな書き方も出来ます。
投票数:125 平均点:1.36
返信する

このトピックに投稿する

題名
ゲスト名
投稿本文

  条件検索へ


メインメニュー

ログイン

ユーザー名:


パスワード:





パスワード紛失  |新規登録

Menu