me da Alerta sin cumplir la Condicion

 

Publi

Resultados 1 al 3 de 3

Tema: me da Alerta sin cumplir la Condicion

  1. #1
    Alguien me puede explicar porque este codigo me crea una alerta sino se cumple la condicion?

    Code:
    Código:
    #property version   “1.00”
     #property strict
    extern bool tendencia = false ;
    
    int start()
    
    {
    
     if (tendencia = true)
     {
    
     Alert(Symbol(),” Atento “);Sleep(2000);
    
     }
    
     return(0);
    
    }
    entiendo que en un principio “tendencia” es false pero me salta la alerta siempre

  2. #2
    Saludos.

    El problema de tu código es que en la sentencia if no estás comprobando el valor de tendencia sino asignándole el valor true. Para comprobar el valor debes utilizar un signo igual doble == (comprobación no estricta, comprueba valor pero no tipo de datos) o triple === (comprobación estricta, comprueba valor y tipo de datos):

    Code:
    if (tendencia == true) {
    Alert(Symbol(),” Atento “);Sleep(2000);

    }

    Muchos ponen el valor a comprobar antes que la variable para evitar que se asigne un nuevo valor a la variable en caso de este tipo de errores. Por ejemplo, en el siguiente ejemplo la comprobación seguiría siendo errónea y no funcionaría correctamente pero no saltaría la alerta ni se le asignaría un nuevo valor a la variable tendencia:

    Code:
    if (true = tendencia) {
    Alert(Symbol(),” Atento “);Sleep(2000);

    }

  3. #3
    Me funciona, gracias por el codigo

Etiquetas para este tema

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Cookies
Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información y política de cookies aquí.