funcion if-else??
hola! necesito ayuda con un ejercicio de programacion en c++. Aqui lo dejo por si alguien me puede ayudar
Escribe un programa que lea dos variables num1 y num2, ambas de tipo int, y una variable
opcion de tipo char. En función del valor de la variable opcion, el programa deberá
mostrar:
· la suma de num1 y num2, cuando el valor de opcion sea la letra S o s,
· la resta de num1 y num2, cuando el valor de opcion sea la letra R o r,
· el producto de num1 y num2, cuando el valor de opcion sea la letra P o p,
yo lo he hecho asi. pero no me compila.
#include <iostream>
using namespace std;
int main (){
int num1, num2;
char opcion;
cout<<"Dame la variable num1: ";
cin>>num1;
cout<<"Dame la variable num2: ";
cin>>num2;
cout<<"Dame la opcion: ";
cin>>opcion;
if (opcion=='S' || opcion=='s')
cout<<"La suma es: "<<num1+num2<<endl;
if (opcion=='R' || opcion=='r')
cout<<"La resta es: "<<num1-num2<<endl;
if (opcion=='P' || opcion=='p')
cout<<"El producto es: "<<num1*num2<<endl;
else cout<<"Errorn";
system ("PAUSE");
return 0;
}
GRACIASSS!!!=)
Escribe un programa que lea dos variables num1 y num2, ambas de tipo int, y una variable
opcion de tipo char. En función del valor de la variable opcion, el programa deberá
mostrar:
· la suma de num1 y num2, cuando el valor de opcion sea la letra S o s,
· la resta de num1 y num2, cuando el valor de opcion sea la letra R o r,
· el producto de num1 y num2, cuando el valor de opcion sea la letra P o p,
yo lo he hecho asi. pero no me compila.
#include <iostream>
using namespace std;
int main (){
int num1, num2;
char opcion;
cout<<"Dame la variable num1: ";
cin>>num1;
cout<<"Dame la variable num2: ";
cin>>num2;
cout<<"Dame la opcion: ";
cin>>opcion;
if (opcion=='S' || opcion=='s')
cout<<"La suma es: "<<num1+num2<<endl;
if (opcion=='R' || opcion=='r')
cout<<"La resta es: "<<num1-num2<<endl;
if (opcion=='P' || opcion=='p')
cout<<"El producto es: "<<num1*num2<<endl;
else cout<<"Errorn";
system ("PAUSE");
return 0;
}
GRACIASSS!!!=)
Yo lo he probado y funciona.
¿El problema a que te refieres es que si suma o resta luego da error? Para solucionar eso usa if anidados o un case
¿El problema a que te refieres es que si suma o resta luego da error? Para solucionar eso usa if anidados o un case
Si no has entendido lo que te habia dicho, el if anidado es:
if (opcion=='S' || opcion=='s')
cout<<"La suma es: "<<num1+num2<<endl;
else
{
if (opcion=='R' || opcion=='r')
cout<<"La resta es: "<<num1-num2<<endl;
else
{
if (opcion=='P' || opcion=='p')
cout<<"El producto es: "<<num1*num2<<endl;
else cout<<"Errorn";
}
}
Y con el case
int main ()
{
int num1, num2, opc;
cout<<"Dame la variable num1: ";
cin>>num1;
cout<<"Dame la variable num2: ";
cin>>num2;
cout<<"Dame la opcion: ";
cin>>opc;
switch (opc)
{
case 83: //S
case 115: //s
case 43: //+
{
cout<<"La suma es: "<<num1+num2<<endl;
break:
}
case 82: //R
case 114: //r
case 45: //-
{
cout<<"La resta es: "<<num1-num2<<endl;
break;
}
case 80: //P
case 112: //p
case 42: //*
{
cout<<"El producto es: "<<num1*num2<<endl;
break;
}
default:
cout<<"Errorn";
}
system ("PAUSE");
return 0;
}
if (opcion=='S' || opcion=='s')
cout<<"La suma es: "<<num1+num2<<endl;
else
{
if (opcion=='R' || opcion=='r')
cout<<"La resta es: "<<num1-num2<<endl;
else
{
if (opcion=='P' || opcion=='p')
cout<<"El producto es: "<<num1*num2<<endl;
else cout<<"Errorn";
}
}
Y con el case
int main ()
{
int num1, num2, opc;
cout<<"Dame la variable num1: ";
cin>>num1;
cout<<"Dame la variable num2: ";
cin>>num2;
cout<<"Dame la opcion: ";
cin>>opc;
switch (opc)
{
case 83: //S
case 115: //s
case 43: //+
{
cout<<"La suma es: "<<num1+num2<<endl;
break:
}
case 82: //R
case 114: //r
case 45: //-
{
cout<<"La resta es: "<<num1-num2<<endl;
break;
}
case 80: //P
case 112: //p
case 42: //*
{
cout<<"El producto es: "<<num1*num2<<endl;
break;
}
default:
cout<<"Errorn";
}
system ("PAUSE");
return 0;
}