ayuda c++ error non-lvalue in assignement
-
HOla acabo de crear la cuenta y soy nuevo pero si necesito ayuda. empiezo con c++ y quiero saber cual es mi problema en este programa sencillo
#include
#include
using namespace std;
int num1, num2;
int res;
int main()
{
int num1 = 0, num2 = 0;
cout<<"ingrese el primer numero impar: ";
cin>>num1;
if(num1>=1 && num1<=100)
{
if (num1 % 2 = 0)******************
{
cout<<"!el numero ingresado esta fuera del rango es es par!";
}
else
{
cout<<"ingrese el segundo numero impar: ";
}
cin>>num2;
}
if(num2>=1 && num2<=100)
{
if (num2 % 2 = 0)*************************
{
cout<<"!el numero ingresado esta fuera del rango es es par!";
}
else
{
res = num1+num2;
cout<<"la suma de ambos numeros impares es: "<}
}
system ("pause");
return 0;
}
abajo me tira el error "non-lvalue in assignement" y me subraya las lineas del codigo que marque con asteriscos ****
por que? :O ayuda!!! -
Si querés preguntar si un número es igual a otro, debés indicarlo con un doble signo =, así:
if (a == b)
De lo contrario, el compilador interpreta que se trata de una asignación, y entiende que querés hacer que 2 sea 0:
2 = 0 en:
if (num % 2 = 0)
Un lvalue es lo que puede ir a la izquierda de una asignación (viene de "left value") y 2 no puede ir a la izquierda del signo de asignación = ya que es una constante.
