Ir ao conteúdo

Ajuda com esse Algoritmo? (C)


MathMix

Posts recomendados

Postado

Olá! Eu estou começando a desenvolver e a programar, então resolvi fazer uma calculadora básica ( Soma, subtração, multiplicação e divisão ), compilando tudo certinho, porém, em sua execução, na hora de pedir o Operador, no caso do sinal na qual vai operar ele simplesmente pula e dá o número da primeira variável, confira abaixo como eu programei e se tiver algo errado, favor me ajudem? Agradeço desde já!

#include <stdlib.h>
#include <stdio.h>

main() {
float op1,op2,resultado;
char opr;
printf("Digite o primeiro operando:\n");
scanf("%f",&op1);
printf("Digite o segundo operando:\n");
scanf("%f",&op2);
printf("Digite o operador:\n");
scanf("%c",&opr);
if(opr == '+'){
resultado=op1+op2;}
if(opr == '-'){
resultado=op1-op2;}
if(opr == '*'){
resultado=op1*op2;}
if(opr == '/'){
resultado=op1/op2;}
printf("Resultado = %f\n",resultado);
system("PAUSE");
}

Eai, o que vocês acham?

Tenho mais projetos a fazer e provavelmente postarei eles por aqui ao decorrer do dia.

Abraços,

Matheus

Uma imagem do que acontece:

2u7uikx.jpg

E agora? Já tentei mudar a compilação de C++ para C e deu na mesma.

Matheus

Postado

Resolvi!

O problema era que o buffer do meu teclado estava corrompendo a memória, nesse caso, só para garantir eu coloquei assim:

            printf("Digite o operador:\n");
scanf("%c",&opr);
scanf("%c",&opr); //adicionei esse

Assim funcionando corretamente!

Abraços!

Código final:

#include <stdio.h>

main(){
int opu;
int ops;
int resultado;
char opr;
printf("Digite o primeiro operando:\n");
scanf("%d",&opu);
printf("Digite o segundo operando:\n");
scanf("%d",&ops);
printf("Digite o operador:\n");
scanf("%c",&opr);
scanf("%c",&opr);
if(opr == '+'){
resultado = opu+ops;}
if(opr == '-'){
resultado = opu-ops;}
if(opr == '*'){
resultado = opu*ops;}
if(opr == '/'){
resultado = opu/ops;}
printf("Resultado = %d\n",resultado);
system("PAUSE");
}

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!