Thread overview
problem with doubles
Aug 10, 2008
Michael P.
Aug 10, 2008
Michael P.
August 10, 2008
So I've attached the file for a very simple program I'm working on. The problem comes from past contests questions, see this:

http://www.cemc.uwaterloo.ca/ccc/past/previous_contests.shtml

The problem I've having is with 2008 Junior problem 1. Every time with my code it says you are overweight, when it is supposed to say normal weight.
So I tried printing out the value I was comparing, and it said nan. Anyone know why?
-Michael P.


August 10, 2008
"Michael P." wrote
> So I've attached the file for a very simple program I'm working on. The problem comes from past contests questions, see this:
>
> http://www.cemc.uwaterloo.ca/ccc/past/previous_contests.shtml
>
> The problem I've having is with 2008 Junior problem 1. Every time with my
> code it says you are overweight, when it is supposed to say normal weight.
> So I tried printing out the value I was comparing, and it said nan. Anyone
> know why?
> -Michael P.
>

scanf is a C function.  You need to exactly specify the type in the string, so use %lf for double

-Steve


August 10, 2008
Steven Schveighoffer Wrote:

> "Michael P." wrote
> > So I've attached the file for a very simple program I'm working on. The problem comes from past contests questions, see this:
> >
> > http://www.cemc.uwaterloo.ca/ccc/past/previous_contests.shtml
> >
> > The problem I've having is with 2008 Junior problem 1. Every time with my
> > code it says you are overweight, when it is supposed to say normal weight.
> > So I tried printing out the value I was comparing, and it said nan. Anyone
> > know why?
> > -Michael P.
> >
> 
> scanf is a C function.  You need to exactly specify the type in the string, so use %lf for double
> 
> -Steve
> 
> 


Thanks, that worked.
BTW, I know that readf is the D equivalent of scanf(right?), but I don't know how to use it.
I should be using readf and writef instead of scanf and printf right?

-Michael P.

August 10, 2008
"Michael P." <baseball.mjp@gmail.com> wrote in message news:g7n3i3$bfm$1@digitalmars.com...
> Steven Schveighoffer Wrote:
>
>> "Michael P." wrote
>> > So I've attached the file for a very simple program I'm working on. The problem comes from past contests questions, see this:
>> >
>> > http://www.cemc.uwaterloo.ca/ccc/past/previous_contests.shtml
>> >
>> > The problem I've having is with 2008 Junior problem 1. Every time with
>> > my
>> > code it says you are overweight, when it is supposed to say normal
>> > weight.
>> > So I tried printing out the value I was comparing, and it said nan.
>> > Anyone
>> > know why?
>> > -Michael P.
>> >
>>
>> scanf is a C function.  You need to exactly specify the type in the
>> string,
>> so use %lf for double
>>
>> -Steve
>>
>>
>
>
> Thanks, that worked.
> BTW, I know that readf is the D equivalent of scanf(right?), but I don't
> know how to use it.
> I should be using readf and writef instead of scanf and printf right?

Yes and yes.  I really wish the C library were harder to use from D.  So many newcomers end up overusing it and then wonder why they have so many issues.

readf is very easy to use.  Just like writef and friends, the function knows the type of the argument without having to look at the format string.