-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathmorsecode.sh
More file actions
executable file
·88 lines (69 loc) · 1.8 KB
/
morsecode.sh
File metadata and controls
executable file
·88 lines (69 loc) · 1.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#made by github.com/ChefYeshpal
#this program just converts words that you type into morsecode... maybe i'll implement it into arduino
#!/bin/bash
declare -A morsecode
#morse code mappings
morsecode["A"]=".−"
morsecode["B"]="-..."
morsecode["C"]="-.-."
morsecode["D"]="-.."
morsecode["E"]="."
morsecode["F"]="..-."
morsecode["G"]="--."
morsecode["H"]="...."
morsecode["I"]=".."
morsecode["J"]=".---"
morsecode["K"]="-.-"
morsecode["L"]=".-.."
morsecode["M"]="--"
morsecode["N"]="-."
morsecode["O"]="---"
morsecode["P"]=".--."
morsecode["Q"]="--.-"
morsecode["R"]=".-."
morsecode["S"]="..."
morsecode["T"]="-"
morsecode["U"]="..-"
morsecode["V"]="...-"
morsecode["W"]=".--"
morsecode["X"]="-..-"
morsecode["Y"]="-.--"
morsecode["Z"]="--.."
morsecode["1"]=".----"
morsecode["2"]="..---"
morsecode["3"]="...--"
morsecode["4"]="....-"
morsecode["5"]="....."
morsecode["6"]="-...."
morsecode["7"]="--..."
morsecode["8"]="---.."
morsecode["9"]="----."
morsecode["0"]="-----"
# Function to convert a single character to Morse code
char_to_morse() {
local char=$1
echo -n "${morsecode[$char]} "
}
# Function to convert a word to Morse code
word_to_morse() {
local word=$1
local morse=""
for ((i=0; i<${#word}; i++)); do
char="${word:$i:1}"
if [ "$char" != " " ]; then
morse+="$(char_to_morse "$char")"
else
morse+=" " # Add three spaces for word spacing in Morse code
fi
done
echo "$morse"
}
# Main script
read -p "Enter a your sentence: " input_word
# Convert the input word to uppercase for simplicity
uppercase_word=$(echo "$input_word" | tr '[:lower:]' '[:upper:]')
# Call the function to convert the word to Morse code
result=$(word_to_morse "$uppercase_word")
# Print the result
echo "Morse code for '$input_word': "
echo " $result"