このディレクトリの索引

# 出典 :: C言語なら俺に聞け(入門編)Part 101 #952 # 年齢と性別を入力しどのグループに属すか表示するプログラムで聞きたいんですけど # グループは4つあり、性別は、男性は0、女性は1で表す。 # ※if文のネストを使用する # Aは20歳未満男性 # Bは20歳未満女性 # Cは20歳以上男性 # Dは20歳以上女性のやりかたがわからないです。 # # '年齢と性別(男性は0、女性は1)を入力し、Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか表示する。' :- '年齢と性別(男性は0、女性は1)を入力し'(_年齢,_性別), 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか表示する'(_年齢,_性別). '年齢と性別(男性は0、女性は1)を入力し'(_年齢,_性別) :- 年齢を入力し(_年齢), '性別(男性は0、女性は1)を入力し'(_性別). 年齢を入力し(_年齢) :- 年齢を行入力(_行,_年齢),!. 年齢を入力し(_年齢) :- 年齢を入力し(_年齢). 年齢を行入力(_行,_年齢) :- write('年齢を入力してください : '), 行入力(_行), 年齢入力診断(_行,_年齢). 年齢入力診断(_行,_年齢) :- read_term_from_atom(_行,_年齢,[]), integer(_年齢), _年齢 >= 0.!. 年齢入力診断(_行,_年齢) :- writef('入力された %t からは適切な年齢が得られません。再入力をお願いします。\n',[_行]), fail. '性別(男性は0、女性は1)を入力し'(_性別) :- write('性別(男性は0、女性は1)を入力してください : '), 行入力(_行), '性別(男性は0、女性は1)入力診断'(_行,_性別),!. '性別(男性は0、女性は1)を入力し'(_性別) :- '性別(男性は0、女性は1)を入力し'(_性別). '性別(男性は0、女性は1)入力診断'(_行,_性別) :- read_term_from_atom(_行,_性別,[]), 入力は0か1(_性別),!. '性別(男性は0、女性は1)入力診断'(_行,_性別) :- writef('入力された %t からは適切な性別が得られません。再入力をお願いします。\n',[_行]), fail. 入力は0か1(0). 入力は0か1(1). 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか表示する'(_年齢,_性別) :- 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか'(_年齢,_性別,_グループ), 表示する(_年齢,_性別,_グループ). 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか'(_年齢,0,'A') :- _年齢 < 20. 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか'(_年齢,1,'B') :- _年齢 < 20. 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか'(_年齢,0,'C') :- _年齢 >= 20. 'Aは20歳未満男性 Bは20歳未満女性 Cは20歳以上男性 Dは20歳以上女性の 4つのどのグループに属すか'(_年齢,1,'D') :- _年齢 >= 20. 表示する(_年齢,_性別,_グループ) :- 性別表示(_性別,_性別表示), writef('入力された 年齢は %t,\n入力された 性別は %t\nグループ判定は %t です\n',[_年齢,_性別表示,_グループ]). 性別表示(0,男性). 性別表示(1,女性). 行入力(_行) :- read_line_to_codes(current_input,Codes), atom_codes(_行,Codes).