いろんな言語で宿題スレ 第三編at TECH
いろんな言語で宿題スレ 第三編 - 暇つぶし2ch279:デフォルトの名無しさん
10/01/15 22:29:17
>>276
% Prolog
main :-
  催促付き整数入力('ひとつ対象となる整数を入力してください : ',_整数),
  write('1.数値nを一つ入力し、各桁の和を求めよ。(123→6)\n'),
  write('2.数値nを反転した値を表示せよ。(123→321)\n'),
  催促付き整数入力('1-2を選択してください : ',_整数2),
  目標選択(_整数2,_整数).

目標選択(1,_数値n) :-
  '数値nを一つ入力し、各桁の和を求める'(_数値n,_各桁の和),
  write_formatted('各桁の和は%tです\n',[_各桁の和]).
目標選択(2,_数値n) :- '数値nを反転した値'を表示する'(_数値n).

'数値nを一つ入力し、各桁の和を求める'(_数値n,_各桁の和) :-
  number_codes(_数値n,L),
  findsum(U,(member(A,L),U is A-48),_各桁の和).

'数値nを反転した値'を表示する'(_数値n) :-
  '数値nを反転した値'(_数値n,_数値nを反転した値),
  write_formatted('数値を反転した値は%tです\n',[_数値nを反転した値]).

'数値nを反転した値'(_数値n,_数値nを反転した値) :-
  number_codes(_数値n,L1),
  reverse(L1,L2),
  number_codes(_数値nを反転した値,L2).



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