このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 152代目 #853 # [1] 授業単元:プログラミング基礎 # [2] 問題文(含コード&リンク):(列挙体) # Sunday, Monday, Tuesday, Wednesday, Thursday, # Friday, Saturday という曜日を表す列挙体 # enum Days を定義せよ.以下の実行例のように, # 曜日を入力すると,enum Days の列挙定数を利用して # 週末,平日,それ以外の場合にそれぞれメッセージを # 表示するプログラムを作成せよ. # 例 % ./q3-3 # 曜日を入力して下さい # (0:日1:月2:火3:水4:木5:金6:土):0 # やった!週末だ # # 曜日を入力して下さい # (0:日1:月2:火3:水4:木5:金6:土):5 # 今日も講義頑張ろう! # # 曜日を入力して下さい # (0:日1:月2:火3:水4:木5:金6:土):7 # この日はないぞう... # 曜日([日,月,火,水,木,金,土]). '曜日を入力すると,曜日 の列挙定数を利用して 週末,平日,それ以外の場合にそれぞれメッセージを表示する' :- 曜日を入力すると(_曜日), '曜日 の列挙定数を利用して 週末,平日,それ以外の場合にそれぞれメッセージを'(_曜日,_メッセージ), 表示する'(_メッセージ),!. 曜日を入力すると(_曜日) :- write('曜日を入力してください [日,月,火,水,木,金,土] : '), 行入力(_曜日). '曜日 の列挙定数を利用して 週末,平日,それ以外の場合にそれぞれメッセージを'(_曜日,週末は一家揃って中央競馬) :- '曜日 の列挙定数を利用して 週末のメッセージを'(_曜日,_メッセージ). '曜日 の列挙定数を利用して 週末,平日,それ以外の場合にそれぞれメッセージを'(_曜日,週末は一家揃って中央競馬) :- '曜日 の列挙定数を利用して 平日のメッセージを'(_曜日,_メッセージ). '曜日 の列挙定数を利用して 週末,平日,それ以外の場合にそれぞれメッセージを'(_曜日,_メッセージ) :- それ以外の場合(_曜日,_メッセージ). '曜日 の列挙定数を利用して 週末のメッセージを'(_曜日,週末は一家揃って中央競馬) :- 曜日から曜日番号を得る(_曜日,_曜日番号), 週末だ(_曜日番号). '曜日 の列挙定数を利用して 平日のメッセージを'(_曜日,平日も一家揃って公営競馬) :- 曜日から曜日番号を得る(_曜日,_曜日番号), 平日だ(_曜日番号). それ以外の場合(_曜日,_メッセージ) :- atomic_list_concat(['入力された ',_曜日,' は 日,月,火,水,木,金,土 のいずれでもありません],_メッセージ). 曜日から曜日番号を得る(_曜日,_曜日番号), 曜日(_曜日ならび), nth0(_曜日番号,_曜日ならび,_曜日). 週末だ(_曜日番号) :- 0 is _曜日番号 mod 6. 平日だ(_曜日番号) :- \+(0 is _曜日番号 mod 6). 表示する(_メッセージ) :- writef('%t\n',[_メッセージ]). 行入力(_行) :- read_line_to_codes(current_input,_文字コードならぴ), atom_codes(_行,_文字コードならび).