いろんな言語で宿題スレ 第三編at TECH
いろんな言語で宿題スレ 第三編 - 暇つぶし2ch521:デフォルトの名無しさん
10/01/29 22:25:00
>>515
% Prolog
'キーボードから(標準入力から)1つの十進数表現の正の整数を受け取って、その数が3の倍数かまたは各桁の数字のいづれかに3が入っている数ならば画面に(標準入力に)YES、そうでなければ、NOと出力せよ' :-
'キーボードから(標準入力から)1つの十進数表現の正の整数を受け取って(_正の整数),
その数が3の倍数かまたは各桁の数字のいづれかに3が入っている(_正の整数,_診断),
write_formatted('%t\n',[_診断]),!.

'キーボードから(標準入力から)1つの十進数表現の正の整数を受け取って(_正の整数):-
  repeat,
  get_integer(_正の整数),
  integer(_正の整数),
  _正の整数 >= 0,!.

その数が3の倍数かまたは各桁の数字のいづれかに3が入っている(_数,'YES') :-
  0 is _数 mod 3,!.
その数が3の倍数かまたは各桁の数字のいづれかに3が入っている(_数,'YES') :-
  各桁の数字のいづれか(_数,L),
  member(3,L),!.
その数が3の倍数かまたは各桁の数字のいづれかに3が入っている(_,'NO').

各桁の数字のいづれか(N,[N]) :- N < 10,!.
各桁の数字のいづれか(N,[M|R]) :-
  M is N mod 10,
  M2 is N // 10,
  各桁の数字のいづれか(M2,R).


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch