-1

Haskell では、文字の 2 つのリストを作成します。1 つはオリジナルの 26 文字のアルファベットで(A,B,C,D,....Z)、すべて大文字です。もう1つは同じリストですが、 のように文字の順番を変えてい(B,H,A,I......S)ます。そして、入力がBthenの場合、 return H、 return のように、これら 2 つのリストの間で置換も行いCますA

誰かがこれから私を助けることができますか?

4

2 に答える 2

0

変更されたアルファベットが次のとおりであると仮定します。

"ORXBMDTCIGJYKAVLSWFNUQEHZP"

コードは次のようになります。

import Data.List
import Data.Maybe

alphabet = ['A'..'Z']
mapping = zip alphabet "ORXBMDTCIGJYKAVLSWFNUQEHZP"

according letter = (snd . fromJust . (find (\t -> f t letter))) mapping
    where
        f (x, y) letter = x == letter

main = print $ according 'H'

mappingアルファベットと変更されたバージョンの間の対応を作成します。そしてaccording、元のものに基づいて、変更されたものから手紙を返します。

于 2013-10-18T19:45:20.077 に答える