Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Telégrafo - Código Morse

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    C / C# Telégrafo - Código Morse

    Galerinha GH , vocês concerteza já devem ter assistido um Tom e Jerry entre outros desenhos animados.

    Sabe quando eles pegam um piano e ficam tocando uns sons que emite código morse ?

    Bem esse programa você irá digitar em seu computador o que você quer dizer e o seu Speaker irá transmitir em código Morse !

    Qualquer BUG me avise .

    #include <stdio.h>
    #include <conio.h>
    #include <dos.h>
    #include <math.h>

    char morse[600];
    int c = 0;

    int main()
    {
    char msg[200];
    int i;

    void addDitDah(char);

    printf("Telegrafo C v1.0\n");
    printf("por Raphael Pina Viana\n\n");

    printf("Mensagem: ");

    for(i = 0; i < 200; i++)
    {
    printf("%c", msg[i] = getch());
    if(msg[i] == 13)
    {
    msg[i] = '';
    break;
    }
    }
    printf("\n");

    printf("\n\nEncriptando mensagem ... ");
    for(i = 0; i <= 200; i++)
    {
    /* Converte para Alfabeto em Codigo Morse */
    switch(msg[i])
    {
    case (int)'a':
    {
    addDitDah('.');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'b':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'c':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('-');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'d':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'e':
    {
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'f':
    {
    addDitDah('.');
    addDitDah('.');
    addDitDah('-');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'g':
    {
    addDitDah('-');
    addDitDah('-');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'h':
    {
    addDitDah('.');
    addDitDah('.');
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'i':
    {
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'j':
    {
    addDitDah('.');
    addDitDah('-');
    addDitDah('-');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'k':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'l':
    {
    addDitDah('.');
    addDitDah('-');
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'m':
    {
    addDitDah('-');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'n':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'o':
    {
    addDitDah('-');
    addDitDah('-');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'p':
    {
    addDitDah('.');
    addDitDah('-');
    addDitDah('-');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'q':
    {
    addDitDah('-');
    addDitDah('-');
    addDitDah('.');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'r':
    {
    addDitDah('.');
    addDitDah('-');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'s':
    {
    addDitDah('.');
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case (int)'t':
    {
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'u':
    {
    addDitDah('.');
    addDitDah('.');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'v':
    {
    addDitDah('.');
    addDitDah('.');
    addDitDah('.');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'w':
    {
    addDitDah('.');
    addDitDah('-');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'x':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('.');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'y':
    {
    addDitDah('-');
    addDitDah('.');
    addDitDah('-');
    addDitDah('-');
    addDitDah('0');
    break;
    }
    case (int)'z':
    {
    addDitDah('-');
    addDitDah('-');
    addDitDah('.');
    addDitDah('.');
    addDitDah('0');
    break;
    }
    case 32:
    {
    addDitDah('/');
    break;
    }
    case 0:
    {
    addDitDah('');
    break;
    }
    }
    }

    printf("[OK]\n\nPressione qualquer tecla para trasmitir mensagem ...");
    getch();

    for(i = 0; i <= 600; i++)
    {
    nosound();
    delay(9 * pow(10, 15));
    if(morse[i] == '.')
    {
    sound(200);
    delay(10000);
    }
    else if(morse[i] == '-')
    {
    sound(200);
    sleep(1);
    }
    else if(morse[i] == '0')
    sleep(1);
    else if(morse[i] == '/')
    sleep(2);
    else if(morse[i] == '')
    break;
    }

    printf("\n\nTrasmissao terminada.");
    getch();
    return 1;
    }

    void addDitDah(char DitDah)
    {
    morse[c] = DitDah;
    c++;
    }
    Se tiverem duvidas baixem o .exe Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...

    Lembrando , qualquer BUG por favor me contate !

    Cordialmente,
    ex_SheL$
    Last edited by RafaelVenancio; 18-12-2009, 19:24.

  • Font Size
    #2
    Muito intereçante!!
    Mas nao consegui compilar
    segue os erros do compilador:

    Compilador: Default compiler
    Building Makefile: "C:\Documents and Settings\Brendon\Desktop\Makefile.win"
    Executando make...
    make.exe -f "C:\Documents and Settings\Brendon\Desktop\Makefile.win" all
    g++.exe -c main.cpp -o main.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"

    main.cpp:26:10: empty character constant
    main.cpp:257:11: empty character constant
    main.cpp: In function `int main()':
    main.cpp:269: error: `sleep' undeclared (first use this function)
    main.cpp:269: error: (Each undeclared identifier is reported only once for each function it appears in.)
    main.cpp:272: error: `sound' undeclared (first use this function)
    main.cpp:273: error: `delay' undeclared (first use this function)

    main.cpp:284:21: empty character constant

    make.exe: *** [main.o] Error 1

    Execução terminada

    Comment


    • Font Size
      #3
      No meu computador não deu este error , vou tentar resolve-lo .

      Att,
      ex_SheL$

      Comment


      • Font Size
        #4
        bom =/
        vc colocou alguma lib?

        Comment


        • Font Size
          #5
          Br3ndon , faiz um tempo que eu criei isso mais eu acredito que eu coloquei sim .

          Comment


          • Font Size
            #6
            Postado Originalmente por Br3nd0n Ver Post
            Muito intereçante!!
            Mas nao consegui compilar
            segue os erros do compilador:

            Compilador: Default compiler
            Building Makefile: "C:\Documents and Settings\Brendon\Desktop\Makefile.win"
            Executando make...
            make.exe -f "C:\Documents and Settings\Brendon\Desktop\Makefile.win" all
            g++.exe -c main.cpp -o main.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"

            main.cpp:26:10: empty character constant
            main.cpp:257:11: empty character constant
            main.cpp: In function `int main()':
            main.cpp:269: error: `sleep' undeclared (first use this function)
            main.cpp:269: error: (Each undeclared identifier is reported only once for each function it appears in.)
            main.cpp:272: error: `sound' undeclared (first use this function)
            main.cpp:273: error: `delay' undeclared (first use this function)

            main.cpp:284:21: empty character constant

            make.exe: *** [main.o] Error 1

            Execução terminada
            O codigo é em C...e não C++.

            Comment


            • Font Size
              #7
              ae pessoal o link ta quebrado, quem tiver ai posta aqui ou manda para o meu email sr_script@hotmail.com por favor

              Comment


              • Font Size
                #8
                Um dos erros é o "empty character constant" ele acontece pois no caso você não joga nada em um espaço de 1 byte,dizendo que jogou algo.No caso é só trocar as referências a '' nas linhas citadas pelo compilador por ' ' ou outro caracter que não tenha significado especial ao programa.
                O erro relativo as funções não estarem declaradas é porque o arquivo dos.h não foi propriamente incluido.Procure pelo mesmo e caso não exista,crie-o.Não uso o windows,logo não sei se será necessário baixar alguma DLL que defina o comportamento das funções citadas por ele ou isso já aconteça em alguma DLL.
                Interessante seu código apesar de apresentar redundancias e usar bibliotecas antigas e algumas não portaveis.

                Comment

                X
                Working...
                X