# Euphoria - Date & Time

#### Complete Python Prime Pack

9 Courses     2 eBooks

#### Artificial Intelligence & Machine Learning Prime Pack

6 Courses     1 eBooks

#### Java Prime Pack

9 Courses     2 eBooks

Euphoria has a library routine that returns the date and time to your program.

## The date() Method

The date() method returns a sequence value composed of eight atom elements. The following example explains it in detail −

```#!/home/euphoria-4.0b2/bin/eui

integer curr_year, curr_day, curr_day_of_year, curr_hour, curr_minute, curr_second
sequence system_date, word_week, word_month, notation,
curr_day_of_week, curr_month
word_week = {"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"}
word_month = {"January", "February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"}
-- Get current system date.
system_date = date()

-- Now take individual elements
curr_year = system_date + 1900
curr_month = word_month[system_date]
curr_day = system_date
curr_hour = system_date
curr_minute = system_date
curr_second = system_date
curr_day_of_week = word_week[system_date]
curr_day_of_year = system_date

if curr_hour >= 12 then
notation = "p.m."
else
notation = "a.m."
end if

if curr_hour > 12 then
curr_hour = curr_hour - 12
end if

if curr_hour = 0 then
curr_hour = 12
end if

puts(1, "\nHello Euphoria!\n\n")
printf(1, "Today is %s, %s %d, %d.\n", {curr_day_of_week,
curr_month, curr_day, curr_year})

printf(1, "The time is %.2d:%.2d:%.2d %s\n", {curr_hour,
curr_minute, curr_second, notation})

printf(1, "It is %3d days into the current year.\n", {curr_day_of_year})
```

This produces the following result on your standard screen −

```Hello Euphoria!

Today is Friday, January 22, 2010.
The time is 02:54:58 p.m.
It is  22 days into the current year.
```

## The time() Method

The time() method returns an atom value, representing the number of seconds elapsed since a fixed point in time. The following example explains it in detail −

```#!/home/euphoria-4.0b2/bin/eui

constant ITERATIONS = 100000000
integer p
atom t0, t1, loop_overhead

t0 = time()
for i = 1 to ITERATIONS do
-- time an empty loop
end for

loop_overhead = time() - t0

t0 = time()
for i = 1 to ITERATIONS do
p = power(2, 20)
end for

t1 = (time() - (t0 + loop_overhead))/ITERATIONS

printf(1, "Time (in seconds) for one call to power:%d\n", t1)
```

This produces the following result −

```Loop overhead:1
Time (in seconds) for one call to power:0
```

## Date & Time Related Methods

Euphoria provides a list of methods which helps you in manipulating date and time. These methods are listed in Euphoria Library Routines.