勉強するit秘密メッセージバイナリverの作成


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

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

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

for i in 0...93 {        
  nA[i] = alphabet[i]
}
var aN: [String : Int] = [:]  

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

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

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

    print("해석할 2진수 비밀메세지를 입력해 주세요.")
    print("(마우스로 붙여넣기 해주세요)")
    print("ex> 101110 0 11111 11111 1010001 1000000")
    let inputBinary = readLine()!.split(separator:" ") 
    print("")
    print("해석 결과:",terminator:" ")
    var input2 : [Int] = [] 
    for i in 0...inputBinary.count-1 {
      let input2Decimal : Int = Int(inputBinary[i],radix:2)!
      input2.append(input2Decimal)
    }
    for i in 0...input2.count-1 {
      print(nA[input2[i]]!,terminator:"")
    }
    print("")
    print("")
}