//WEEKDAY Day of week. // [D, W] = WEEKDAY(T) returns the day of the week in numeric and // string form given T, a serial date number or a date vector. // The days of the week are assigned the following values. // // 1 Sun // 2 Mon // 3 Tue // 4 Wed // 5 Thu // 6 Fri // 7 Sat // // For example, [d, w] = weekday(733562) or [d,w] = weekday([2008 6 3]) // returns d = 3 and w = Tue. // // See also EOMDAY // SDR 2008-06-03 function [d, w] = weekday(t, old) if argn(2)==1 then old = 0; end if size(t, 2) > 1 then select size(t,2) case 3 case 5 t = [t, zeros(t(:,1))]; case 6 else error("T must have 1, 3, 5, or 6 columns.") end t = datenum(t); end if old then week = [ "Sun" ; "Mon" ; "Tue" ; "Wed" ; "Thu" ; "Fri" ; "Sat"]; d = pmodulo(fix(t)-2, 7) + 1; else week = ["Mon" ; "Tue" ; "Wed" ; "Thu" ; "Fri" ; "Sat"; "Sun"]; d = pmodulo(fix(t)-3, 7) + 1; end if argn(1)==2 w = week(d); end endfunction