vtwntmtn #5118(2008/01/02 10:22 GMT) [ Erlang ] Rating0/0=0.00
calコマンドっぽく表示します。 > erlc year_cal.erl > erl -noshell -s year_cal main -s init stop 1月_2008 日 月 火 水 木 金 土 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 (中略) 12月_2008 日 月 火 水 木 金 土 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
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
-module(year_cal). -export([main/0]). main() -> year_cal(2008). year_cal(Year) -> lists:foreach(fun manth/1, [{Year, X} || X <- lists:seq(1, 12)]). manth({Year, Manth}) -> io:format("~B月_~B~n", [Manth, Year]), io:format("日 月 火 水 木 金 土~n", []), First = calendar:day_of_the_week(Year, Manth, 1), if 7 == First -> true; true -> io:format(lists:duplicate(((First rem 7) * 3) - 1, " "), []) end, manth(Year, Manth, 1). manth(Year, Manth, Day) -> case calendar:valid_date(Year, Manth, Day) of false -> io:nl(); % 一ヶ月の終わり true -> Dotw = calendar:day_of_the_week(Year, Manth, Day), if 7 == Dotw -> io:format("~2B", [Day]); % 日曜日 6 == Dotw -> io:format("~3B~n", [Day]); % 土曜日 true -> io:format("~3B", [Day]) % その他平日 end, manth(Year, Manth, Day + 1) end.
Rating0/0=0.00-0+
[ reply ]
vtwntmtn
#5118()
[
Erlang
]
Rating0/0=0.00
calコマンドっぽく表示します。 > erlc year_cal.erl > erl -noshell -s year_cal main -s init stop 1月_2008 日 月 火 水 木 金 土 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 (中略) 12月_2008 日 月 火 水 木 金 土 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-module(year_cal). -export([main/0]). main() -> year_cal(2008). year_cal(Year) -> lists:foreach(fun manth/1, [{Year, X} || X <- lists:seq(1, 12)]). manth({Year, Manth}) -> io:format("~B月_~B~n", [Manth, Year]), io:format("日 月 火 水 木 金 土~n", []), First = calendar:day_of_the_week(Year, Manth, 1), if 7 == First -> true; true -> io:format(lists:duplicate(((First rem 7) * 3) - 1, " "), []) end, manth(Year, Manth, 1). manth(Year, Manth, Day) -> case calendar:valid_date(Year, Manth, Day) of false -> io:nl(); % 一ヶ月の終わり true -> Dotw = calendar:day_of_the_week(Year, Manth, Day), if 7 == Dotw -> io:format("~2B", [Day]); % 日曜日 6 == Dotw -> io:format("~3B~n", [Day]); % 土曜日 true -> io:format("~3B", [Day]) % その他平日 end, manth(Year, Manth, Day + 1) end.Rating0/0=0.00-0+
[ reply ]