Se esperaba un valor

En ese lugar de la instrucción debía ir un valor, como un número, un texto, una variable o una operación, y Jaguar encontró otra cosa o nada.

Qué significa

Error de escritura en la línea 2
Falta un valor: la instrucción termina antes de tiempo.

Muchas instrucciones necesitan un valor: después de la flecha de una asignación, después de Si (la condición), después de Escribir, a cada lado de un +. Un valor puede ser un número (5), un texto ("hola"), una variable (edad), una operación (a + b) o una función (Raiz(16)).

El mensaje tiene tres formas, según lo que Jaguar encontró en lugar del valor:

  • «Falta un valor: la instrucción termina antes de tiempo»: la línea se acabó y el valor nunca llegó.
  • «Se esperaba un valor, pero encontré la palabra …»: en su lugar hay una palabra del lenguaje. Si es Entonces o Hacer, falta la condición.
  • «Se esperaba un valor, pero encontré …»: hay un símbolo que no va ahí, como dos operadores seguidos.

Ejemplos y cómo arreglarlos

La asignación sin valor

Algoritmo asignar
    total <-
    Escribir total
FinAlgoritmo

Error de escritura en la línea 2
Falta un valor: la instrucción termina antes de tiempo.

Así queda arreglado:

Algoritmo asignar
    total <- 0
    Escribir total
FinAlgoritmo

Un Si sin condición

Algoritmo revisar
    Leer n
    Si Entonces
        Escribir "Es positivo"
    FinSi
FinAlgoritmo

Error de escritura en la línea 3
Se esperaba un valor, pero encontré la palabra 'Entonces'. Parece que falta la condición antes de 'Entonces'.

Entre Si y Entonces va la pregunta que se responde con verdadero o falso:

Algoritmo revisar
    Leer n
    Si n > 0 Entonces
        Escribir "Es positivo"
    FinSi
FinAlgoritmo

Dos operadores seguidos

Algoritmo cuenta
    x <- 5 * * 2
    Escribir x
FinAlgoritmo

Error de escritura en la línea 2
Se esperaba un valor, pero encontré '*'.

Entre dos operadores siempre va un valor. Si querías una potencia, el operador es ^:

Algoritmo cuenta
    x <- 5 ^ 2
    Escribir x
FinAlgoritmo

Por qué aparece

  • Se quedó a medias una asignación (x <-) o una operación (a +).
  • Falta la condición de un Si o de un Mientras.
  • Hay dos operadores juntos, o una coma de más en Escribir.
  • Escribiste ** para potencia, como en Python. En pseudocódigo se usa ^.

Preguntas frecuentes

¿Qué cuenta como un valor?

Un número, un texto entre comillas, Verdadero o Falso, una variable, una operación entre valores o una función como Raiz(16).

¿Cómo se escribe una potencia?

Con ^. Por ejemplo, 2 ^ 3 es 8. El ** de Python no funciona en pseudocódigo.

Sigue aprendiendo