- es.davy.ai/
- Programación /
- ¿Por qué mi variable con una función de mensaje resulta en NULL?
¿Por qué mi variable con una función de mensaje resulta en NULL?
La tarea que se me asignó fue crear un programa de R donde la entrada es cualquier valor numérico y la salida es si el número es positivo o negativo. Las condiciones que tenía eran usar las funciones “message” o “cat”. El problema es que cuando llamo “sign_assign” por sí solo, devuelve un NULL. Pero cuando llamo la misma variable junto con las instrucciones, muestra el mensaje correctamente. ¡Gracias!
Aquí está la entrada y salida que necesito para el programa:
Entrada: x <- -6;
Salida: -6 es negativo
P.D. Lo que quería decir con “llamar de vuelta la misma variable junto con las instrucciones” es ejecutar “sign_assign” junto con los declaraciones “if”. ¡Disculpe si parecí confuso, soy nuevo en programar en R!
Answer
Comments are closed.
davy.ai
Creando un programa en R para determinar si un valor numérico es positivo o negativo usando las funciones de mensaje o cat.
Asignación del valor de entrada
Primero, debemos asignar un valor a la variable ‘x’ como nuestra entrada.
Creando la variable de asignación del signo
Ahora crearemos una variable llamada ‘sign_assign’ que evaluará el valor de ‘x’ e imprimirá un mensaje indicando si es positivo o negativo.
Explicación
Utilizamos una declaración ‘if-else’ para evaluar el valor de ‘x’. Si ‘x’ es mayor que 0, la función de mensaje imprimirá “x es positivo”. Si ‘x’ es menor que 0, la función de mensaje imprimirá “x es negativo”. Si ‘x’ es igual a 0, detendremos el programa con el mensaje “0 no es positivo ni negativo”.
Probando la salida
Ahora podemos llamar a la variable ‘sign_assign’ para imprimir el mensaje con la salida correcta.
Resultado: -6 es negativo
Explicación
Cuando llamamos ‘sign_assign’ junto con las declaraciones if, evaluará el valor de ‘x’ e imprimirá el mensaje según la condición. Cuando solo llamamos ‘sign_assign’ por sí solo, devuelve un valor NULL porque no le dijimos que imprimiera el mensaje.