Morse
Publicado por Daniel 30/09/2005
[ Hits: 5.818 ]
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)
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (7)
De volta para o futuro - ou melhor, para o presente (parte 2) (0)









