MORSE

構文
  1. UString = MORSE.encode( str )
  2. UString = MORSE.decode( str )
引数
str
エンコード・デコードする文字列(区切りは半角スペース)
戻値
変換した文字列

プログラム

////////////////////////////////////////////////// // 【引数】 // str : エンコード・デコードする文字列(区切りは半角スペース) // 【戻値】 // 変換した文字列 ////////////////////////////////////////////////// MODULE MORSE HASHTBL code PROCEDURE MORSE() code["A"] = "・-" code["B"] = "-・・・" code["C"] = "-・-・" code["D"] = "-・・" code["E"] = "・" code["F"] = "・・-・" code["G"] = "--・" code["H"] = "・・・・" code["I"] = "・・" code["J"] = "・---" code["K"] = "-・-" code["L"] = "・-・・" code["M"] = "--" code["N"] = "-・" code["O"] = "---" code["P"] = "・--・" code["Q"] = "--・-" code["R"] = "・-・" code["S"] = "・・・" code["T"] = "-" code["U"] = "・・-" code["V"] = "・・・-" code["W"] = "・--" code["X"] = "-・・-" code["Y"] = "-・--" code["Z"] = "--・・" code["1"] = "・----" code["2"] = "・・---" code["3"] = "・・・--" code["4"] = "・・・・-" code["5"] = "・・・・・" code["6"] = "-・・・・" code["7"] = "--・・・" code["8"] = "---・・" code["9"] = "----・" code["0"] = "-----" code["."] = "・-・-・-" code[","] = "--・・--" code["?"] = "・・--・・" code["--"] = "-・・・-" code["-"] = "-・・・・-" code["/"] = "-・・-・" code["@"] = "・--・-・" FOR n = 0 TO LENGTH(code) code[code[n, HASH_VAL]] = code[n, HASH_KEY] NEXT FEND FUNCTION encode(str) DIM res = "" FOR n = 1 TO LENGTH(str) res = res + code[COPY(str, n, 1)] + " " NEXT RESULT = TRIM(res) FEND FUNCTION decode(str) DIM res = "" DIM arr = SPLIT(str, " ") FOR n = 0 TO UBound(arr) res = res + code[arr[n]] NEXT RESULT = res FEND ENDMODULE ////////////////////////////////////////////////// // 【引数】 // 配列 : 上限値を求める配列 // 【戻値】 // 配列の上限値 ////////////////////////////////////////////////// FUNCTION UBound(array[]) RESULT = RESIZE(array) FEND

この記事は役に立ちましたか?
役に立った 役に立たなかった