このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 132代目 #76 # [1] 授業単元:プログラミング # [2] 問題文(含コード&リンク): # 問題1 # # 次の文章をプログラム中に文字列として与える. # # The metropolitan government and the Tokyo 2016 Bid Committee had a budget of 15 billion yen to campaign to host the Games, of which 10 billion yen was shouldered by the metropolitan government. # # アルファベット(ピリオド含む,大文字,小文字は区別しない),数字がそれぞれ何回出現したかをカウントして出力するプログラムを作成せよ # 文章('The metropolitan government and the Tokyo 2016 Bid Committee had a budget of 15 billion yen to campaign to host the Games, of which 10 billion yen was shouldered by the metropolitan government.'). アルファベットならび(['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,'.']). 数字ならび(['0','1','2','3','4','5','6','7','8','9']). アルファベット(_文字) :- アルファベットならび(_アルファベットならび), member(_文字,_アルファベットならび). 数字(_数字) :- 数字ならび(_数字ならび), member(_数字,_数字ならび). 'アルファベット(ピリオド含む,大文字,小文字は区別しない),数字がそれぞれ何回出現したかをカウントして出力する'(_アルファベットの出現度数,_数字の出現度数) :- 文章(_文章), アルファベットと数字の出現回数(_文章,_アルファベットの出現回数,_数字の出現回数), 出力する(_アルファベットの出現回数,_数字の出現回数). アルファベットと数字の出現回数(_文章,_アルファベットの出現回数,_数字の出現回数) :- アルファベットの出現回数(_文章,_アルファベットの出現回数), 数字の出現回数(_文章,_数字の出現回数). アルファベットの出現回数(_文章,_アルファベットの出現回数) :- 度数(文章の中にアルファベットが一文字ある(_文章),_アルファベットの出現回数). 文章の中にアルファベットが一文字ある(_文章) :- sub_atom(_文章,_,1,_,_文字), アルファベット(_文字). 数字の出現回数(_文章,_数字の出現回数) :- 度数(文章の中に数字が一文字ある(_文章),_数字の出現回数). 文章の中に数字が一文字ある(_文章) :- sub_atom(_文章,_,1,_,_数字), 数字(_数字). 出力する(_アルファベットの出現回数,_数字の出現回数) :- writef('アルファベット出現度数 ... %w\n',[_アルファベットの出現回数]), writef('数字出現度数 ... %w\n',[_数字の出現回数]). 度数(_目標,_度数) :- findall(_,_目標,L), length(L,_度数).