Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much

Re: Converting to decimal elsif

by Sherlock (Deacon)
on Jul 26, 2001 at 01:17 UTC ( #99810=note: print w/replies, xml ) Need Help??

in reply to Converting to decimal elsif

I think your logic is somewhat incorrect, nlafferty.

I haven't tested this, but it would appear that if $start_minute was, say 38, to begin with, you'd like to get the value .75, correct? The way your logic is set up, the first elsif will be true (38 >= 7.5), therefore $start_minute will be set to .25 and all logic ends. I doubt this is what you want.

One simple solution would be to change your code like so...

if ($start_minute < 7.5) {$start_minute = .0 ;} elsif ($start_minute >= 7.5 && $start_minute < 22.5) {$start_minute = .25 ;} elsif ($start_minute >= 22.5 && $start_minute < 37.5) {$start_minute = .5 ;} elsif ($start_minute >= 37.5 && $start_minute < 52.5) {$start_minute = .75 ;} elsif ($start_minute >= 52.5) {$start_minute = 1.0 ;}
This should fix your problem. Now, if we look at the case where $start_minute is 38, none of these will be true until you get to the third elsif, which sets $start_minute to .75, which is, I believe, what you want.

Hopefully, this helps,
- Sherlock

Update: Doing conversions using just less thans or greater thans as BikeNomad and HyperZonk have done will make your code simpler but, please note, if you do that, order matters! My suggestion would be to do it that way, though.

Skepticism is the source of knowledge as much as knowledge is the source of skepticism.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://99810]
and a moth chases the moon...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (4)
As of 2018-02-25 00:28 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (312 votes). Check out past polls.