Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
June 30, 2010 Bug Of pow in std.math | ||||
---|---|---|---|---|
| ||||
I found a Bug.The bug lives in function of pow in std.math. When wake up the bug that, we select value of minus to second argument of pow. And happen the <<object.Error: Integer Divide by Zero>> error. I think that is a Bug. Is it? |
June 30, 2010 Re: Bug Of pow in std.math | ||||
---|---|---|---|---|
| ||||
Posted in reply to sins666 | sins666 <d-bugmail@puremagic.com> wrote: > I found a Bug.The bug lives in function of pow in std.math. > > When wake up the bug that, we select value of minus to second > argument of pow. > And happen the <<object.Error: Integer Divide by Zero>> error. > > I think that is a Bug. Is it? I would recommend discussing such in digitalmars.D.learn. Now, I'm not able to recreate this. Am I right to understand it to be: std.math.pow( 5, -3 ); ? If not, would you please post code that triggers the bug? -- Simen |
July 01, 2010 Re: Bug Of pow in std.math | ||||
---|---|---|---|---|
| ||||
Posted in reply to Simen kjaeraas | == Quote from Simen kjaeraas (simen.kjaras@gmail.com)'s article
> sins666 <d-bugmail@puremagic.com> wrote:
> > I found a Bug.The bug lives in function of pow in std.math.
> >
> > When wake up the bug that, we select value of minus to second
> > argument of pow.
> > And happen the <<object.Error: Integer Divide by Zero>> error.
> >
> > I think that is a Bug. Is it?
> I would recommend discussing such in digitalmars.D.learn.
> Now, I'm not able to recreate this. Am I right to understand
> it to be:
> std.math.pow( 5, -3 ); ?
> If not, would you please post code that triggers the bug?
import std.math;
import std.stdio;
void main()
{
writeln(pow(5, 2)); // 25
writeln(pow(5, 0)); // 1
writeln(pow(5, -3)); // object.Error: Integer Divide by Zero
}
And dmd version is 2.047.
Was I mistake in my source.or bug?
|
July 01, 2010 Re: Bug Of pow in std.math | ||||
---|---|---|---|---|
| ||||
Posted in reply to sins666 | sins666 <d-bugmail@puremagic.com> wrote: > import std.math; > import std.stdio; > > void main() > { > writeln(pow(5, 2)); // 25 > writeln(pow(5, 0)); // 1 > writeln(pow(5, -3)); // object.Error: Integer Divide by Zero > } > > And dmd version is 2.047. > Was I mistake in my source.or bug? The mistake is in your code. std.math.pow has a version that takes only integers, and returns only integers. That is the version you are using. If instead you try: writeln(pow(5.0, -3.0)); You should see improvement. -- Simen |
July 02, 2010 Re: Bug Of pow in std.math | ||||
---|---|---|---|---|
| ||||
Posted in reply to Simen kjaeraas | == Quote from Simen kjaeraas (simen.kjaras@gmail.com)'s article > sins666 <d-bugmail@puremagic.com> wrote: > > import std.math; > > import std.stdio; > > > > void main() > > { > > writeln(pow(5, 2)); // 25 > > writeln(pow(5, 0)); // 1 > > writeln(pow(5, -3)); // object.Error: Integer Divide by Zero > > } > > > > And dmd version is 2.047. > > Was I mistake in my source.or bug? > The mistake is in your code. std.math.pow has a version that takes > only integers, and returns only integers. That is the version you > are using. > If instead you try: > writeln(pow(5.0, -3.0)); > You should see improvement. Oh, I see. Thank you for your response and advice. even so, why is that "object.Error: Integer Divide by Zero"... |
Copyright © 1999-2021 by the D Language Foundation