Entrada y salida de datos en LiveCode
Daniela hace una aplicación para calcular cuánto debe pagar por la electricidad del mes. El usuario escribe los kWh consumidos en un campo y, al hacer clic en un botón, el resultado debe aparecer en otro campo. ¿Cómo «viaja» el dato desde lo que escribe la persona hasta el resultado en pantalla? Lo vas a ver en este apartado y volverás a esta pregunta al final.
Los campos como entrada y salida
Todo programa hace tres cosas: recibe datos (entrada), los procesa y muestra resultados (salida). En LiveCode, la interfaz más sencilla para esto son los campos de la tarjeta:
-
Un campo donde el usuario escribe es la entrada.
-
Un campo donde el programa muestra el valor calculado es la salida.
-
El botón con su evento
mouseUpes lo que pone todo en marcha.
Lo que el usuario escribe en un campo es siempre texto para LiveCode, pero si son dígitos, LiveCode lo trata como número cuando haces cálculos con él.
Escribe la instrucción de LiveCode que muestra en el campo «resultado» el contenido de la variable total. Explica por qué un campo es adecuado para presentar la salida…
Escribe la instrucción de LiveCode que muestra en el campo «resultado» el contenido de la variable total.
Explica por qué un campo es adecuado para presentar la salida de datos a quien usa el programa.
Leer un dato: put field … into
Para leer un dato se copia el contenido del campo en una variable:
put field "edad" into x
Se lee así: «pon el contenido del campo edad dentro de la variable x». El valor sale de lo que el usuario escribió en ese campo justo antes de hacer clic en el botón. A partir de ahí, x guarda ese valor y puedes usarlo en cálculos.
En LiveCode, la instrucción se usa con frecuencia para leer datos. Explica qué hace y de dónde sale el valor que se guarda en x.
En LiveCode, la instrucción
put field "edad" into x
se usa con frecuencia para leer datos.
Explica qué hace y de dónde sale el valor que se guarda en x.
Mostrar un resultado: put … into field
Para mostrar un resultado se hace al revés: se pone un valor o una expresión dentro de un campo.
put total into field "resultado"
put L * 4 into field "perimetro"
Fíjate en que put … into sirve para las dos cosas: guardar en una variable o mostrar en un campo. Lo que cambia es el destino.
Observa este script: Identifica cuál es el dato de entrada, cuál es el de salida y qué calcula el programa.
Observa este script:
on mouseUp
put field "lado" into L
put L * 4 into field "perimetro"
end mouseUp
Identifica cuál es el dato de entrada, cuál es el de salida y qué calcula el programa.
Un botón tiene este script: El usuario escribe 6 en el campo «a» y 4 en el campo «b», y luego hace clic en el botón. Indica qué valor aparece en el campo «area» y qué…
Un botón tiene este script:
on mouseUp
put field "a" into x
put field "b" into y
put x * y into field "area"
end mouseUp
El usuario escribe 6 en el campo «a» y 4 en el campo «b», y luego hace clic en el botón. Indica qué valor aparece en el campo «area» y qué representa si «a» y «b» son las medidas de un rectángulo en metros.
Escribir un script completo
Un buen script de entrada y salida sigue siempre el mismo orden: leer, calcular, mostrar.
Escribe el script de un botón que lea una temperatura en grados Celsius del campo «celsius» y muestre en el campo «fahrenheit» el resultado de aplicar: $$F = C \cdot…
Escribe el script de un botón que lea una temperatura en grados Celsius del campo «celsius» y muestre en el campo «fahrenheit» el resultado de aplicar:
$$F = C \cdot \frac{9}{5} + 32$$Calcula qué debería aparecer si el usuario escribe 25 en «celsius».
Frank David escribió este script para sumar dos números, pero al ejecutarlo el campo «res» queda vacío o aparece un error: Los números están escritos en los campos «n1»…
Frank David escribió este script para sumar dos números, pero al ejecutarlo el campo «res» queda vacío o aparece un error:
on mouseUp
put x + y into field "res"
end mouseUp
Los números están escritos en los campos «n1» y «n2». Explica cuál es el error, corrige el script y indica qué mostraría el campo «res» si «n1» contiene 15 y «n2» contiene 27.
Decisiones y ciclos con entrada y salida
Dentro del script puedes usar condiciones y ciclos, igual que en el pseudocódigo de 9.° grado. Solo cambia la escritura:
if promedio >= 60 then
put "Aprobado" into field "estado"
else
put "Suspenso" into field "estado"
end if
El texto que se muestra va entre comillas. Un ciclo con contador se escribe repeat with i = 1 to n … end repeat. Para sumar 1 a una variable puedes usar add 1 to cont.
Escribe el script de un botón que lea tres notas de los campos «n1», «n2» y «n3», calcule el promedio y lo muestre en el campo «promedio». Además, debe mostrar en el…
Escribe el script de un botón que lea tres notas de los campos «n1», «n2» y «n3», calcule el promedio y lo muestre en el campo «promedio». Además, debe mostrar en el campo «estado» la palabra «Aprobado» si el promedio es de 60 o más, y «Suspenso» en caso contrario.
Prueba tu script con las notas 70, 55 y 60. Indica qué se muestra en cada campo y explica cómo interviene la condición.
Analiza este script: 1. Haz la traza para $n = 5$ y da los valores finales de suma y cont. 2. Indica cuál variable es un contador y cuál un acumulador, y justifica. 3.…
Analiza este script:
on mouseUp
put field "n" into n
put 0 into suma
put 0 into cont
repeat with i = 1 to n
put suma + i into suma
if i mod 2 = 0 then add 1 to cont
end repeat
put suma into field "total"
put cont into field "pares"
end mouseUp
-
Haz la traza para $n = 5$ y da los valores finales de
sumaycont. -
Indica cuál variable es un contador y cuál un acumulador, y justifica.
-
Explica qué se mostraría si el usuario deja el campo «n» vacío o escribe un texto en lugar de un número, y propón cómo evitarlo.
Resumen
Vuelve al principio: el dato de Daniela viaja del campo de consumo a una variable con put field "kwh" into x, se calcula con una expresión y vuelve a la pantalla con put … into field "resultado", todo dentro del evento mouseUp del botón.