none
NECESITO AYUDA RRS feed

  • 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;

    martes, 6 de marzo de 2018 20:08

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

    martes, 6 de marzo de 2018 20:50

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

    martes, 6 de marzo de 2018 20:50
  • 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:

    martes, 6 de marzo de 2018 21:32