1. Entering Time Values

At 09:58 AM 5/24/98 -0400, you wrote:
>...if I am referencing the sequence, I don't know whether the user
>has entered 8:15, 20:15, or 08:15.  I don't know what my first two
>elements will be.
>Of course, I can force the user to enter hh:mm, but I want to
>make my program as...well, easy as possible.

sequence tyme  -- can't use the word 'time' as a var.
tyme = gets(0)
if find(':',tyme) = 2 then tyme = '0' & tyme -- look for colon position
end if
puts(1,tyme)

Regards,
Irv

new topic     » topic index » view message » categorize

2. Entering Time Values

Irv,

My tyme sequence in effect would be:

{"1","0",":","3","0"} if I enter the tyme as 10:30.  But date[4..5] =3D
{10,30}.  How do I compare the two?

As you can see, tyme is just digits, while date() are thetrue values.  I
can't even use &.  In Euphoria, can I combine two atoms of a sequence int=
o
one atom?

--Alan
 =

new topic     » goto parent     » topic index » view message » categorize

3. Re: Entering Time Values

>Irv,
>
>My tyme sequence in effect would be:
>
>{"1","0",":","3","0"} if I enter the tyme as 10:30.  But date[4..5] =
>{10,30}.  How do I compare the two?
>
>As you can see, tyme is just digits, while date() are thetrue values.  I
>can't even use &.  In Euphoria, can I combine two atoms of a sequence into
>one atom?
>
>--Alan

I believe that the routine you should be looking at is value().

include get.e

sequence value_return
integer hour, minutes

value_return = value(tyme[1..2])
hour = value[2] -- hour is now 10
value_return = value(tyme[4..5])
minutes = value[2] -- minutes is now 30

value() checks if a string can be converted into a value, and returns a two
element sequence, the first element tells if it was succesful, and the
second gives the number it found. (Maybe lousy explenation, but I hope you
see what I mean)

And here is the compare:

If compare({hour,minutes},date[4..5]) = 0 then -- if no difference
    -- woohoo, they match!
end if

Hope I did not say anything wrong now... No code is tested.

Einar Mogen

new topic     » goto parent     » topic index » view message » categorize

4. Re: Entering Time Values

Einar,

You did fine.  I'm going out now, but your code makes sense.  Boy, there =
is
nothing Euphoria cannot do!

--Alan
 =

new topic     » goto parent     » topic index » view message » categorize

5. Re: Entering Time Values

Einar I looked all over for that routine when I was writing the internet
starter that is on my webpage.  I finally gave up on a built in conversion
and wrote one that changed time values from Date into actual time elements.
Monty

new topic     » goto parent     » topic index » view message » categorize

6. Re: Entering Time Values

Alan, try filtering tyme through this before comparing:

tyme={value(tyme[1..2]),value(tyme[4..5])}
tyme={tyme[1][2],tyme[2][2]}

new topic     » goto parent     » topic index » view message » categorize

7. Re: Entering Time Values

oops, the problems already been solved.  That's what I get for posting
before I finish reading all my mail.

new topic     » goto parent     » topic index » view message » categorize

8. Re: Entering Time Values

Here's another way to do what you want:

sequence now
sequence lunchtime

now = date()

now = sprintf("%02d:%02d"&10,now[4..5])
puts(1,"The current time is: "&now)

puts(1,"What time would you like to eat? ")
lunchtime = gets(0)
if find(':',lunchtime) = 2 then
  lunchtime = '0' & lunchtime
end if

if compare(now,lunchtime) = 0  then
   puts(1,"Let's Eat!")
 else puts(1,"OK, wait until "&lunchtime)
end if

Regards,
Irv

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu