'お題:今日は第何曜日か計算して現在の日時を以下のように出力する
2021/06/09/第2水曜日/19:21/
ヒント
今日の日にちを7で割る 例:9 / 7
少数点以下は切り捨て
1を足す
カレンダーを見ながら計算すると分かりやすい' :-
現在の日時(_年,_月,_日,_時,_分),
今日は第何曜日か計算して(date(_年,_月,_日),_第何曜日),
'現在の日時を以下のように出力する
2021/06/09/第2水曜日/19:21/'(_年,_月,_日,_時,_分,_第何曜日).
現在の日時(_年,_月,_日,_時,_分) :-
get_time(_タイムスタンプ),
stamp_date_time(_タイムスタンプ,date(_年,_月,_日,_時,_分,_,_,_,_),local).
今日は第何曜日か計算して(_今日,_第何曜日) :-
day_of_the_week(_今日,_曜日番号),
曜日番号(_曜日,_曜日番号),
第何曜日(_今日,_曜日,_第何曜日).
'現在の日時を以下のように出力する
2021/06/09/第2水曜日/19:21/'(_年,_月,_日,_時,_分,_第何曜日) :-
'月,日,時,分をヘッドゼロサプライの2桁の文字列とする'(_月,_日,_時,_分,_月_2,_日_2,_時_2,_分_2),
writef('%w/%w/%w/%w/%w:%w/\n',[_年,_月_2,_日_2,_第何曜日,_時_2,_分_2]).
曜日(_年,_月,_日,_曜日) :-
day_of_the_week(date(_年,_月,_日),_曜日番号),
曜日番号(_曜日,_曜日番号).
曜日番号(月曜,1).
曜日番号(火曜,2).
曜日番号(水曜,3).
曜日番号(木曜,4).
曜日番号(金曜,5).
曜日番号(土曜,6).
曜日番号(日曜,7).
第何曜日(date(_,_,_日),_曜日,_第何曜日) :-
atomic_list_concat([第,_第何,_曜日],_第何曜日).
'月,日,時,分をヘッドゼロサプライの2桁の文字列とする'(_月,_日,_時,_分,_月_2,_日_2,_時_2,_分_2) :-
maplist(ヘッドゼロサプライの2桁の文字列とするヘッドゼロサプライの2桁の文字列とする,[_月,_日,_時,_分],[_月_2,_日_2,_時_2,_分_2]).
ヘッドゼロサプライの2桁の文字列とするヘッドゼロサプライの2桁の文字列とする(N,A) :-
N < 10,
ヘッドゼロサプライの2桁の文字列とするヘッドゼロサプライの2桁の文字列とする(N,A) :-
atom_number(A,N).
program :-
'お題:今日は第何曜日か計算して現在の日時を以下のように出力する
2021/06/09/第2水曜日/19:21/
ヒント
今日の日にちを7で割る 例:9 / 7
少数点以下は切り捨て
1を足す
カレンダーを見ながら計算すると分かりやすい'.
J+OBiumhjO+8muS7iuaXpeOBr+esrOS9leabnOaXpeOBi+ioiOeul+OBl+OBpuePvuWcqOOBruaXpeaZguOCkuS7peS4i+OBruOCiOOBhuOBq+WHuuWKm+OBmeOCiwoyMDIxLzA2LzA5L+esrDLmsLTmm5zml6UvMTk6MjEvCgrjg5Ljg7Pjg4gK5LuK5pel44Gu5pel44Gr44Gh44KSN+OBp+WJsuOCi+OAgOS+i++8mjkgLyA3CuWwkeaVsOeCueS7peS4i+OBr+WIh+OCiuaNqOOBpgrvvJHjgpLotrPjgZkK44Kr44Os44Oz44OA44O844KS6KaL44Gq44GM44KJ6KiI566X44GZ44KL44Go5YiG44GL44KK44KE44GZ44GEJyA6LQrnj77lnKjjga7ml6XmmYIoX+W5tCxf5pyILF/ml6UsX+aZgixf5YiGKSwK5LuK5pel44Gv56ys5L2V5puc5pel44GL6KiI566X44GX44GmKGRhdGUoX+W5tCxf5pyILF/ml6UpLF/nrKzkvZXmm5zml6UpLAon54++5Zyo44Gu5pel5pmC44KS5Lul5LiL44Gu44KI44GG44Gr5Ye65Yqb44GZ44KLCjIwMjEvMDYvMDkv56ysMuawtOabnOaXpS8xOToyMS8nKF/lubQsX+aciCxf5pelLF/mmYIsX+WIhixf56ys5L2V5puc5pelKS4KCuePvuWcqOOBruaXpeaZgihf5bm0LF/mnIgsX+aXpSxf5pmCLF/liIYpIDotCmdldF90aW1lKF/jgr/jgqTjg6Djgrnjgr/jg7Pjg5cpLApzdGFtcF9kYXRlX3RpbWUoX+OCv+OCpOODoOOCueOCv+ODs+ODlyxkYXRlKF/lubQsX+aciCxf5pelLF/mmYIsX+WIhixfLF8sXyxfKSxsb2NhbCkuCgrku4rml6Xjga/nrKzkvZXmm5zml6XjgYvoqIjnrpfjgZfjgaYoX+S7iuaXpSxf56ys5L2V5puc5pelKSA6LQpkYXlfb2ZfdGhlX3dlZWsoX+S7iuaXpSxf5puc5pel55Wq5Y+3KSwK5puc5pel55Wq5Y+3KF/mm5zml6UsX+abnOaXpeeVquWPtyksCuesrOS9leabnOaXpShf5LuK5pelLF/mm5zml6UsX+esrOS9leabnOaXpSkuCgon54++5Zyo44Gu5pel5pmC44KS5Lul5LiL44Gu44KI44GG44Gr5Ye65Yqb44GZ44KLCjIwMjEvMDYvMDkv56ysMuawtOabnOaXpS8xOToyMS8nKF/lubQsX+aciCxf5pelLF/mmYIsX+WIhixf56ys5L2V5puc5pelKSA6LQon5pyILOaXpSzmmYIs5YiG44KS44OY44OD44OJ44K844Ot44K144OX44Op44Kk44GuMuahgeOBruaWh+Wtl+WIl+OBqOOBmeOCiycoX+aciCxf5pelLF/mmYIsX+WIhixf5pyIXzIsX+aXpV8yLF/mmYJfMixf5YiGXzIpLAp3cml0ZWYoJyV3LyV3LyV3LyV3LyV3OiV3L1xuJyxbX+W5tCxf5pyIXzIsX+aXpV8yLF/nrKzkvZXmm5zml6UsX+aZgl8yLF/liIZfMl0pLgoK5puc5pelKF/lubQsX+aciCxf5pelLF/mm5zml6UpIDotCmRheV9vZl90aGVfd2VlayhkYXRlKF/lubQsX+aciCxf5pelKSxf5puc5pel55Wq5Y+3KSwK5puc5pel55Wq5Y+3KF/mm5zml6UsX+abnOaXpeeVquWPtykuCgrmm5zml6Xnlarlj7co5pyI5pucLDEpLgrmm5zml6Xnlarlj7co54Gr5pucLDIpLgrmm5zml6Xnlarlj7co5rC05pucLDMpLgrmm5zml6Xnlarlj7co5pyo5pucLDQpLgrmm5zml6Xnlarlj7co6YeR5pucLDUpLgrmm5zml6Xnlarlj7co5Zyf5pucLDYpLgrmm5zml6Xnlarlj7co5pel5pucLDcpLgoK56ys5L2V5puc5pelKGRhdGUoXyxfLF/ml6UpLF/mm5zml6UsX+esrOS9leabnOaXpSkgOi0KX+esrOS9lSBpcyBf5pelIC8vIDcgKyAxLAphdG9taWNfbGlzdF9jb25jYXQoW+esrCxf56ys5L2VLF/mm5zml6VdLF/nrKzkvZXmm5zml6UpLgoKJ+aciCzml6Us5pmCLOWIhuOCkuODmOODg+ODieOCvOODreOCteODl+ODqeOCpOOBrjLmoYHjga7mloflrZfliJfjgajjgZnjgosnKF/mnIgsX+aXpSxf5pmCLF/liIYsX+aciF8yLF/ml6VfMixf5pmCXzIsX+WIhl8yKSA6LQptYXBsaXN0KOODmOODg+ODieOCvOODreOCteODl+ODqeOCpOOBrjLmoYHjga7mloflrZfliJfjgajjgZnjgovjg5jjg4Pjg4njgrzjg63jgrXjg5fjg6njgqTjga4y5qGB44Gu5paH5a2X5YiX44Go44GZ44KLLFtf5pyILF/ml6UsX+aZgixf5YiGXSxbX+aciF8yLF/ml6VfMixf5pmCXzIsX+WIhl8yXSkuCgrjg5jjg4Pjg4njgrzjg63jgrXjg5fjg6njgqTjga4y5qGB44Gu5paH5a2X5YiX44Go44GZ44KL44OY44OD44OJ44K844Ot44K144OX44Op44Kk44GuMuahgeOBruaWh+Wtl+WIl+OBqOOBmeOCiyhOLEEpIDotCk4gPCAxMCwKYXRvbV9jb25jYXQoJzAnLE4sQSksIS4K44OY44OD44OJ44K844Ot44K144OX44Op44Kk44GuMuahgeOBruaWh+Wtl+WIl+OBqOOBmeOCi+ODmOODg+ODieOCvOODreOCteODl+ODqeOCpOOBrjLmoYHjga7mloflrZfliJfjgajjgZnjgosoTixBKSA6LQphdG9tX251bWJlcihBLE4pLgoKcHJvZ3JhbSA6LQon44GK6aGM77ya5LuK5pel44Gv56ys5L2V5puc5pel44GL6KiI566X44GX44Gm54++5Zyo44Gu5pel5pmC44KS5Lul5LiL44Gu44KI44GG44Gr5Ye65Yqb44GZ44KLCjIwMjEvMDYvMDkv56ysMuawtOabnOaXpS8xOToyMS8KCuODkuODs+ODiArku4rml6Xjga7ml6XjgavjgaHjgpI344Gn5Ymy44KL44CA5L6L77yaOSAvIDcK5bCR5pWw54K55Lul5LiL44Gv5YiH44KK5o2o44GmCu+8keOCkui2s+OBmQrjgqvjg6zjg7Pjg4Djg7zjgpLopovjgarjgYzjgonoqIjnrpfjgZnjgovjgajliIbjgYvjgorjgoTjgZnjgYQnLgo=