Ряд функций
служит для возврата текущего времени и даты. Они перечислены ниже.
calendar(d)
— возвращает календарь на месяц, в который попадает день, заданный аргументом
d (дни отсчитываются от начала летоисчисления);
calendar
— возвращает матрицу размером 6x7, содержащую календарь на текущий месяц.
Календарь начинается с воскресения (первый столбец) и завершается субботой;
calendar(y
,m) — возвращает календарь на месяц, заданный аргументом т, и год, заданный
аргументом у;
Вызов функции
без присваивания результата выдает календарь на экран. Примеры:
»
calendar
Jul
2000
S
М
Tu
W
Th
F
S
0
0
0
0
0
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
0
0
0
0
0
calendar(700477)
Nov
1917
S
M
Tu
W
Th
F
S
0
0
0
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
0
0
0
0
0
0
0
0
clock — возвращает вектор из 6 элементов, содержащий текущую дату и время
в десятичной форме [год месяц день час минуты секунды]. Первые пять элементов
этого вектора — целые числа. Шестой элемент имеет несколько десятичных знаков
после запятой. Функция fix(clock) округляет число секунд до целого значения.
Пример:
cputime
— возвращает время работы процессора (в секундах) , использованное системой
MATLAB с момента ее запуска. Это число может выйти за рамки внутреннего
представления, и тогда отсчет времени начинается заново. Пример:
»
+tl=cputime; w=surf(peaks(30));cputime-tl
ans =
0.2200
str =
date — возвращает строку, содержащую дату в формате дд-ммм-гггг (день-месяц-год).
Пример:
»
d = date
d =
24-Jul-2000
datenum
— преобразует строку даты в порядковый номер даты, который отсчитывается
с некоторого начального дня (01.01.00);
datenum(str)
— преобразует дату, заданную строкой str, в порядковый номер даты. Строка
string должна иметь один из следующих форматов: 0, 1, 2, 6, 13, 14, 15 или
16, определенных для функции datestr;
datenum(Y.M.D)
— возвращает порядковый номер даты для соответствующих массивов элементов
Y, М и D (год, месяц, день). Массивы Y, М и D должны иметь одинаковую размерность
(при этом любые из них могут быть скалярами);
datenum(Y.M.D,H.MI,S)
— возвращает порядковый номер даты для соответствующих массивов элементов
Y, М, D, H, Ml и S (год, месяц, день, часы, минуты, секунды). Массивы Y,
М, D, H, Ml и S должны иметь одинаковую размерность (при этом любые из них
могут быть скалярами).
datestr(D,
dateform) — преобразует каждый элемент массива порядковых номеров даты D
в строку. Аргумент dateform определяет формат результата; dateform может
быть номером или строкой в соответствии с табл. 8.5.
Таблица
8.5.
Форматы представления даты
Dateform(номер)
Dateform (строка)
Пример
0
'dd-rmiM-yyyy
HH:MM:SS'
1l-Mar-1995
03:45
1
'dd-mmM-yyyy'
Ol-Mar-1995
2
'mm/dd/yy'
03/01/95
3
'
mmm '
Mar
4
'm'
M
5
'mm'
3
6
'mm/dd'
03/01
7
'dd'
1
8
'ddd'
Wed
9
'd'
W
10
'УУУУ'
1995
11
'УУ
95
12
'
mmmyy '
Mar95
13
'HH:MM:SS'
15:45:17
datevec(A)
— преобразует входные величины в массив размерности пхб, каждая строка которого
представляет собой вектор [Y,M.D,H,MI,S]. Первые пять элементов вектора
— целые числа. Массив А может состоять или из строк, удовлетворяющих формату
функции datestr, или из скалярных величин, созданных функциями datenum и
now;
[Y, M.,
D, H. MI, S] = datevec (A) — возвращает компоненты вектора даты как индивидуальные
переменные.
Любой компонент
входного вектора, который не вписывается в нормальный диапазон дат, преобразуется
в следующий диапазон (так, например, несуществующая дата June 31 преобразуется
в July 1). Допускаются значения нулевого месяца и нулевого дня. Например:
»
n = datevecC 11/31/98')
n=
1998
12 1 0
0 0
»
n = datevec(710223)
n
=
1944
7 10 0
0
О eomday (Y,
М) — возвращает последний день года и месяца, заданных соответственно элементами
массивов Y и М. Пример (нахождение високосных лет двадцатого столетия):
»
у =
1900:1999;
» Е = eomday(y.2);
» y(find(E==29))
ans=
Columns
1 through 6
1904
1908 1912 1916 1920 1924
Columns 7 through 12
1928
1932 1936 1940 1944 1948
Columns 13 through 18
1952
1956 1960 1964 1968 1972
Columns 19 through 24
1976
1980 1984 1988 1992 1996
etime(t2,tl)
— возвращает длительность промежутка времени (в секундах), задаваемого векторами
t1 и t2. Векторы должны удовлетворять формату, выдаваемому функцией clock:
Т = [год месяц
день час минуты секунды].
Функция работает
некорректно, если в текущий промежуток времени попадут границы месяца или года,
что, однако, случается крайне редко и исправляется при повторе операции. Пример
(вычисляется время, затрачиваемое на быстрое преобразование Фурье с 2048 точками):
»
х = rand(2048,l);t = clock; fft(x); etime(clock.t);etime (clock.t)
ans =
0.0500
now —
возвращает текущие время и дату в форме числа. Использование rem(now.l)
возвращает только время, a floor(now) — только дату. Пример: