Principales respuestas
NECESITO AYUDA

Pregunta
-
cuando coloco el codigo a funcionar dentro del programa me sale un error que me dice que el termino de expresion decimal no es valido y que no se puede usar la variable dInteres antes de declararla ademas dice que la declaracion de la varible local oculta el nombre del campo que tengo creado que se llama Nomina.dInteres.
aqui dejo el codigo:
int nMeses = //Tu manera para calcular los meses
decimal dInteres = 0;if (nMeses <= 36)
dInteres = 1.5M;
else
dInteres = 1.0M;
//---------Con ternario-----------
decimal dInteres = nMeses <= 36 ? 1.5M : 1.0M;
return dInteres;
Respuestas
-
hola
no puedes declarar la variable dos veces, usa
dInteres = nMeses <= 36 ? 1.5M : 1.0M;
sin el decimal delante ene sa linea, ya que esta definida mas arriba
igualmente si ya haces el if (nMeses <= 36) para que haces nuevamente el mismo if pero en linea, como que repites
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta andres penagos portilla martes, 6 de marzo de 2018 23:20
Todas las respuestas
-
hola
no puedes declarar la variable dos veces, usa
dInteres = nMeses <= 36 ? 1.5M : 1.0M;
sin el decimal delante ene sa linea, ya que esta definida mas arriba
igualmente si ya haces el if (nMeses <= 36) para que haces nuevamente el mismo if pero en linea, como que repites
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta andres penagos portilla martes, 6 de marzo de 2018 23:20
-
Buenas Andrés,
Si no me equivoco, esa respuesta te la di yo en otro hilo, en el que te decía dos maneras de hacerlo, pero era para que eligieses una u otra, es decir, o lo haces con el if, o lo haces con el ternario, las dos cosas funcionan igual, pero solo tienes que usar una, o declaras dInteres y lo asignas con el if, o lo declaras asignándolo con el operador ternario, pero no de las dos maneras.
Por otro lado, como te puse en el código con comentarios, tienes que calcular los meses de la manera que te interese, supongo que será a través de un textbox, o de algo, pero no vale con que dejes nMeses y punto, tienes que asignarlo...
Para calcular el interes, puedes quitar lo que tienes y hacerlo asi
public decimal ObtenerInteres(int nMeses) { return nMeses <= 36 ? 1.5M : 1.0M; }
Desde tu código, llamas al método cuando quieras, pero el número de meses tienes que obtenerlo de alguna manera antes, de algún modo lo harás.
Si tienes dudas comentanos
Atte
No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.
Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:
- Editado Jorge TurradoMVP martes, 6 de marzo de 2018 21:34
- Propuesto como respuesta Juan MondragónModerator martes, 6 de marzo de 2018 22:59