Skip to content

Instantly share code, notes, and snippets.

@mazhar266
Last active July 30, 2020 11:27
Show Gist options
  • Save mazhar266/351ae7b5865dfc8c40cf826956d23ad1 to your computer and use it in GitHub Desktop.
Save mazhar266/351ae7b5865dfc8c40cf826956d23ad1 to your computer and use it in GitHub Desktop.
Morse Code Conversion
#!/usr/bin/perl -w
# check if the domain name is passed or not
if (!$ARGV [0]) {
print "String is needed\n";
die ();
}
# morse code list
my %letters;
# First digits
$letters{'0'} = '-----';
$letters{'1'} = '.----';
$letters{'2'} = '..---';
$letters{'3'} = '...--';
$letters{'4'} = '....-';
$letters{'5'} = '....';
$letters{'6'} = '-....';
$letters{'7'} = '--...';
$letters{'8'} = '---..';
$letters{'9'} = '----.';
# And now, letters
$letters{'A'} = '.-';
$letters{'B'} = '-..';
$letters{'C'} = '-.-.';
$letters{'D'} = '-..';
$letters{'E'} = '.';
$letters{'F'} = '..-.';
$letters{'G'} = '--.';
$letters{'H'} = '....';
$letters{'I'} = '..';
$letters{'J'} = '.---';
$letters{'K'} = '-.-';
$letters{'L'} = '.-..';
$letters{'M'} = '--';
$letters{'N'} = '-.';
$letters{'O'} = '---';
$letters{'P'} = '.--.';
$letters{'Q'} = '--.-';
$letters{'R'} = '.-.';
$letters{'S'} = '...';
$letters{'T'} = '-';
$letters{'U'} = '..-';
$letters{'V'} = '...-';
$letters{'W'} = '.--';
$letters{'X'} = '-..-';
$letters{'Y'} = '-.--';
$letters{'Z'} = '--..';
$letters{' '} = '/';
$string = $ARGV [0];
$string = uc $string;
for my $c (split //, $string) {
print $letters{$c}, " ";
}
print "\n";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment