Buenas,
Tienes que realizar las operaciones después de leer los números, no antes, sino es normal que no te devuelva nada.
Código C++:
Ver original#include<iostream.h>
#include<string.h>
#include<math.h>
using namespace std;
int main ()
{
int a,b,s,r,m,d,res;
char o;
cout<<"teclea el primer digito"<<endl;
cin>>a;
cout<<"teclea el signo"<<endl;
cin>>o;
cout<<"teclea el segundo numero"<<endl;
cin>>b;
s=a+b;
r=a-b;
m=a*b;
d=a/b;
res=a%b;
switch(o)
{
case '+': cout<<s<<endl;
break;
case '-': cout<<r<<endl;
break;
case '*' : cout<<m<<endl;
break;
case '/' : cout<<d<<endl;
break;
case '%' : cout<<res<<endl;
break;
default:
cout<<" Error, comando invalido "<<endl;
break;
}
return 0;
}
Puedes mejorarlo quitando operaciones cuando no son necesarias:
Código C++:
Ver original#include<iostream.h>
#include<string.h>
#include<math.h>
using namespace std;
int main ()
{
int a,b;
char o;
cout<<"teclea el primer digito"<<endl;
cin>>a;
cout<<"teclea el signo"<<endl;
cin>>o;
cout<<"teclea el segundo numero"<<endl;
cin>>b;
switch(o)
{
case '+': cout<<a+b<<endl;
break;
case '-': cout<<a-b<<endl;
break;
case '*' : cout<<a*b<<endl;
break;
case '/' : cout<<a/b<<endl;
break;
case '%' : cout<<a%b<<endl;
break;
default:
cout<<" Error, comando invalido "<<endl;
break;
}
return 0;
}