Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda - Função Getch


iCokk

Pergunta

Olá a todos!

Bom.. estou iniciando na programação por causa do meu curso na faculdade (Faço Mecatrônica Industrial).

Para pegar um pouco de prática decidir fazer uma calculadora simples...

Estive tendo problemas com o scanf que tinha que apertar o "enter" para "preencher" a variável então comecei a usar o getch para selecionar o menu de operções da calculadora, para seguir um padrão, eu continuei usando o getch para pegar as outras variáveis e fazer a conta... mas é aí que eu estou com um problema, ele pega normalmente as variáveis mas usa o código ASCII em vez dos números que eu digito...

Um exemplo aqui, da soma:

printf("Selecione a operacao desejada:\n\n");
    printf("Aperte: \n 1 Para Somar \n 2 Para Subtrair \n 3 Para Multiplicar \n 4 Para Dividir \n");
    a=getch();
    if (a==49){
        printf("\n");
        printf("Coloque os dois numeros que deseja somar:\n\n");
        b=getch();
        printf("%d + ", b);
        c=getch();
        printf("%d", c);
    printf("\n\n");
    d = b + c;
    printf("O Resultado é:\n\n");
    printf("========> %d", d);
    printf("\n\n");
    }

Se eu tento fazer a conta, 2 + 2 = 4, aparece 50 + 50 = 100

Tem como eu usar o getch mas mostrar os números normais do teclado?

Obrigado.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Tem como eu usar o getch mas mostrar os números normais do teclado?

Quem disse que o caractere ASCII não é o número normal do teclado? É sim.

Note: nem tudo é o que aparenta ser em computação. A linguagem não vai fazer tudo pra você. É você quem deve converter os valores. Mas é coisa simples. Se observar na tabela ASCII, o "zero" é representado pelo valor 48. Logo, você só precisa subtrair os seus resultados por 48 para ter os números "humanos". :)

Link para o comentário
Compartilhar em outros sites

  • 0
Bom, você entendeu o que eu quis dizer com "normal" não é?...

Cara, eu já ouvi cada uma que você nem ia acreditar. Por isso realmente pensei que você queria o número "normal", como conhecemos. Mas, desfeita a confusão, toca pra frente. ;-)

Link para o comentário
Compartilhar em outros sites

  • 0

hehehe

ta certo..

consegui aqui.. deu certinho hahaha

vlw ae pela força ;)

minha calculadora ta super massa hahaha

Agora.. outra pergunta..

Como que eu faço pro getch() pegar mais de 1 tecla?

porque minha calculadora ta fazendo só conta de 1 + 1... 1 x 9 essas coisas haeuahe

Editado por iCokk
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...