Morse
Publicado por Daniel 30/09/2005
[ Hits: 5.754 ]
Aprenda e escrever em morse com este pequeno programa...
(*
Conversor morse.
Por Daniel Breda.
daniel.breda@gmail.com
Para a comunidade Open Source.
(C) 2005 - Linhares - ES.
*)
program morse;
uses CRT;
var
Tecla: char;
Coluna, Linha1, Linha2: integer;
label
Inicio;
begin
Inicio:
Coluna := 11;
Linha1 := 6;
Linha2 := 8;
TextColor(White);
Writeln('Codigo morse em Pascal.');
Writeln('> [ESC] - Limpar tela.');
Writeln('> [$] - Sair.');
Writeln('Precione as teclas para escrever em morse:');
GotoXY(1, 6);
Writeln('Morse...: ');
GotoXY(1, 8);
Writeln('Normal..: ');
TextColor(Green);
repeat
Tecla := ReadKey;
case Tecla of
'a': begin
GotoXY(Coluna, Linha1);
Write('.-');
GotoXY(Coluna, Linha2);
Write('a');
end;
'b': begin
GotoXY(Coluna, Linha1);
Write('-...');
GotoXY(Coluna, Linha2);
Write('b');
end;
'c': begin
GotoXY(Coluna, Linha1);
Write('-.-.');
GotoXY(Coluna, Linha2);
Write('c');
end;
'd': begin
GotoXY(Coluna, Linha1);
Write('-..');
GotoXY(Coluna, Linha2);
Write('d');
end;
'e': begin
GotoXY(Coluna, Linha1);
Write('.');
GotoXY(Coluna, Linha2);
Write('e');
end;
'f': begin
GotoXY(Coluna, Linha1);
Write('..-.');
GotoXY(Coluna, Linha2);
Write('f');
end;
'g': begin
GotoXY(Coluna, Linha1);
Write('--.');
GotoXY(Coluna, Linha2);
Write('g');
end;
'h': begin
GotoXY(Coluna, Linha1);
Write('....');
GotoXY(Coluna, Linha2);
Write('h');
end;
'i': begin
GotoXY(Coluna, Linha1);
Write('..');
GotoXY(Coluna, Linha2);
Write('i');
end;
'j': begin
GotoXY(Coluna, Linha1);
Write('.---');
GotoXY(Coluna, Linha2);
Write('j');
end;
'k': begin
GotoXY(Coluna, Linha1);
Write('-.-');
GotoXY(Coluna, Linha2);
Write('k');
end;
'l': begin
GotoXY(Coluna, Linha1);
Write('.-..');
GotoXY(Coluna, Linha2);
Write('l');
end;
'm': begin
GotoXY(Coluna, Linha1);
Write('--');
GotoXY(Coluna, Linha2);
Write('m');
end;
'n': begin
GotoXY(Coluna, Linha1);
Write('-.');
GotoXY(Coluna, Linha2);
Write('n');
end;
'o': begin
GotoXY(Coluna, Linha1);
Write('---');
GotoXY(Coluna, Linha2);
Write('o');
end;
'p': begin
GotoXY(Coluna, Linha1);
Write('.--.');
GotoXY(Coluna, Linha2);
Write('p');
end;
'q': begin
GotoXY(Coluna, Linha1);
Write('--.-');
GotoXY(Coluna, Linha2);
Write('q');
end;
'r': begin
GotoXY(Coluna, Linha1);
Write('.-.');
GotoXY(Coluna, Linha2);
Write('r');
end;
's': begin
GotoXY(Coluna, Linha1);
Write('...');
GotoXY(Coluna, Linha2);
Write('s');
end;
't': begin
GotoXY(Coluna, Linha1);
Write('-');
GotoXY(Coluna, Linha2);
Write('t');
end;
'u': begin
GotoXY(Coluna, Linha1);
Write('..-');
GotoXY(Coluna, Linha2);
Write('u');
end;
'v': begin
GotoXY(Coluna, Linha1);
Write('...-');
GotoXY(Coluna, Linha2);
Write('v');
end;
'w': begin
GotoXY(Coluna, Linha1);
Write('.--');
GotoXY(Coluna, Linha2);
Write('x');
end;
'x': begin
GotoXY(Coluna, Linha1);
Write('-..-');
GotoXY(Coluna, Linha2);
Write('x');
end;
'y': begin
GotoXY(Coluna, Linha1);
Write('-.--');
GotoXY(Coluna, Linha2);
Write('y');
end;
'z': begin
GotoXY(Coluna, Linha1);
Write('--..');
GotoXY(Coluna, Linha2);
Write('z');
end;
'0': begin
GotoXY(Coluna, Linha1);
Write('-----');
GotoXY(Coluna, Linha2);
Write('0');
end;
'1': begin
GotoXY(Coluna, Linha1);
Write('.---');
GotoXY(Coluna, Linha2);
Write('1');
end;
'2': begin
GotoXY(Coluna, Linha1);
Write('..---');
GotoXY(Coluna, Linha2);
Write('2');
end;
'3': begin
GotoXY(Coluna, Linha1);
Write('...--');
GotoXY(Coluna, Linha2);
Write('3');
end;
'4': begin
GotoXY(Coluna, Linha1);
Write('....-');
GotoXY(Coluna, Linha2);
Write('4');
end;
'5': begin
GotoXY(Coluna, Linha1);
Write('.....');
GotoXY(Coluna, Linha2);
Write('5');
end;
'6': begin
GotoXY(Coluna, Linha1);
Write('-....');
GotoXY(Coluna, Linha2);
Write('Linha1');
end;
'7': begin
GotoXY(Coluna, Linha1);
Write('--...');
GotoXY(Coluna, Linha2);
Write('7');
end;
'8': begin
GotoXY(Coluna, Linha1);
Write('---..');
GotoXY(Coluna, Linha2);
Write('Linha2');
end;
'9': begin
GotoXY(Coluna, Linha1);
Write('----.');
GotoXY(Coluna, Linha2);
Write('9');
end;
#27: begin
ClrScr;
Goto Inicio;
end;
end;
Coluna := Coluna + 6;
if (Coluna >= 80) then
begin
Coluna := 11;
Linha1 := Linha1 + 4;
Linha2 := Linha2 + 4;
end;
until
Tecla = '$';
end.
Criptografador feito no Lazarus (Delphi 7 para Linux)
Gerador de Senha feito no Lazarus (Delphi 7 para Linux)
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (15)
Secure boot, artigo interessante, nada técnico. (4)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)









