勉強するit秘密メッセージの作成

2585 ワード

https://replit.com/@premookbap/secretMessage
情報を受信し、数値に変換します.
逆に、スペースで区切られた数字を入力してメールに変換します.
let alphabet = ["a", "b", "H", "q", "y", "d", " ", "[", "c", "N", "=", "_", "t", "n", "$", ">", ")", "G", "D", "^", "I", "3", "r", ",", "L", "0", "x", "*", "g", "u", "\'", "}", "@", "p", "C", "Q", "T", "`", "&", "U", "?", "]", "~", "l", "m", "2", "F", "+", "{", "v", "f", "Y", "7", "e", "R", "(", "6", "<", "k", "s", ";", "i", "-", "K", "J", "w", "!", "#", ":", "O", "8", "1", "Z", "/", "S", "W", "B", "4", "E", "P", "A", "9", "5", "z", "%", "h", "|", "o", "#", ".", "j", "M", "V", "X"]

//shuffled()            // 배열 섞기 
// print(x) // 섞인 배열 출력 .. 복붙으로 암호 바꾸기

var aN: [String : Int] = [:]
var nA: [Int : String] = [:]

for i in 0...93 {       
  nA[i] = alphabet[i]
}

for i in 0...93 {     
  aN[alphabet[i]] = i
}

while true {
    print("비밀메세지로 만들 메세지를 작성해 주세요.")
    print("(영어,숫자,공백,기본특수문자)")
    let input = Array(readLine()!).map {String($0)}
    print("")

    print("내 비밀메세지 (마우스로 복사해주세요) :",terminator:" ")
    for i in 1...input.count {
      print(aN[input[i-1]]!,terminator:" ")
    print("")
    print("")

    print("해석할 비밀메세지를 입력해 주세요.")
    print("(마우스로 붙여넣기 해주세요)")
    print("ex> 2 53 43 43 87 66")
    let input2 = readLine()!.split(separator:" ").map {Int($0)!} 
    print("")
    print("해석 결과:",terminator:" ")
    for i in 1...input2.count {
      print(nA[input2[i-1]]!,terminator:"")
    }
    print("")
    print("")
    
}