Tipos de datos, variables y listas
Valentina programa en bloques un juego de una nave. El juego tiene que recordar el nombre del jugador, cuántas vidas le quedan, cuánto tiempo pasó y si ya ganó. ¿Cómo guarda todo eso la computadora, y cómo hace para que cambie mientras se juega? Al final de la página vas a poder responderlo.
Tipos de datos
Un programa trabaja con datos. No todos los datos son iguales: con un número se puede sumar, con un nombre no. Por eso cada dato tiene un tipo.
En este curso usamos cuatro tipos:
| Tipo | Qué guarda | Ejemplos |
|---|---|---|
| Entero | números sin parte decimal | 25, 0, −3 |
| Decimal | números con coma | 3{,}5, 0{,}25 |
| Texto | letras, palabras, símbolos y también cifras entre comillas | «Montevideo», «hola», «2024» |
| Lógico | solo dos valores | verdadero, falso |
Los textos se escriben entre comillas «así». Las comillas le avisan a la computadora: «esto es texto, no lo calcules».
Clasificá cada dato según su tipo (número entero, número decimal, texto o lógico): 25, 3{,}5, «Montevideo», verdadero, «2024». Explicá en una frase por qué «2024» entre…
Clasificá cada dato según su tipo (número entero, número decimal, texto o lógico): 25, 3{,}5, «Montevideo», verdadero, «2024». Explicá en una frase por qué «2024» entre comillas no se trata como un número.
Variables
Una variable es una «cajita con nombre» donde el programa guarda un dato. Tiene un nombre (por ejemplo puntos) y un valor que puede cambiar mientras el programa corre, de ahí su nombre.
Con bloques se escribe así:
-
«poner
puntosen 10» guarda el valor 10 (asignación). -
«sumar 5 a
puntos» toma el valor que hay, le suma 5 y lo guarda de nuevo.
Cuando se asigna un valor nuevo, el anterior se pierde: la cajita guarda un solo valor a la vez.
Para no perderte, armá una tabla de seguimiento (o «traza»): una columna por variable y una fila por bloque. Es la herramienta clave para este apartado.
Variables que dependen de otras
Un bloque puede usar el valor de otras variables. Con a = 4 y b = 7, «poner a en a + b» calcula primero 4 + 7 = 11 y recién después lo guarda en a.
| Bloque | a |
b |
|---|---|---|
poner a en 4 |
4 | — |
poner b en 7 |
4 | 7 |
poner a en a + b |
11 | 7 |
Observá que b no cambió: solo cambia la variable que está «a la izquierda» del «poner … en».
Explicá qué es una variable en programación y decí qué valor tiene la variable puntos después de ejecutar estos bloques en orden: poner puntos en 10 sumar 5 a puntos
Explicá qué es una variable en programación y decí qué valor tiene la variable puntos después de ejecutar estos bloques en orden:
-
poner
puntosen 10 -
sumar 5 a
puntos
Un programa ejecuta, en este orden: poner a en 4 poner b en 7 poner a en a + b poner b en a − 3 Indicá el valor final de a y de b, mostrando el valor de cada variable…
Un programa ejecuta, en este orden:
-
poner
aen 4 -
poner
ben 7 -
poner
aena+b -
poner
bena− 3
Indicá el valor final de a y de b, mostrando el valor de cada variable después de cada bloque.
Elegir el tipo de cada variable
Al crear una variable hay que pensar qué tipo de dato va a guardar. Preguntate:
-
¿Es un nombre o una palabra? → texto.
-
¿Es una cantidad que se cuenta (1, 2, 3…)? → entero.
-
¿Es una medida que puede tener decimales? → decimal.
-
¿Es una respuesta de sí o no? → lógico.
Santiago programa un juego y usa estas variables: nombre, vidas, tiempo (en segundos, puede tener decimales) y ganó (indica si ganó o no). Asigná a cada variable el tipo…
Santiago programa un juego y usa estas variables: nombre, vidas, tiempo (en segundos, puede tener decimales) y ganó (indica si ganó o no). Asigná a cada variable el tipo de dato más adecuado y escribí un valor de ejemplo para cada una. Explicá por qué elegiste ese tipo.
Listas
Imaginá una lista de compras con 50 productos: crear 50 variables sería un lío. Para eso están las listas: una variable que guarda muchos datos ordenados. Cada dato es un elemento y tiene una posición.
En este curso las posiciones se cuentan desde 1.
Dos cosas distintas que no hay que mezclar:
-
La posición es el número de lugar (1, 2, 3…).
-
El elemento es el dato que está en ese lugar.
En la lista colores, el elemento en la posición 3 es «verde», y la lista tiene 4 elementos (su longitud).
Operaciones con listas
| Acción | Qué hace |
|---|---|
| agregar «x» al final | suma un elemento al final |
| eliminar el elemento en la posición n | lo saca; los siguientes corren un lugar |
| reemplazar el elemento en la posición n por «x» | cambia ese elemento; la longitud no varía |
Tenés la lista colores = [«rojo», «azul», «verde», «amarillo»]. Indicá cuál es el elemento en la posición 3 (contando desde 1) y cuántos elementos tiene la lista.
Tenés la lista colores = [«rojo», «azul», «verde», «amarillo»]. Indicá cuál es el elemento en la posición 3 (contando desde 1) y cuántos elementos tiene la lista.
Se parte de la lista compras = [«yerba», «pan», «leche»]. Se ejecutan en orden estas acciones: agregar «dulce de leche» al final de compras eliminar el elemento en la…
Se parte de la lista compras = [«yerba», «pan», «leche»]. Se ejecutan en orden estas acciones:
-
agregar «dulce de leche» al final de
compras -
eliminar el elemento en la posición 2
-
reemplazar el elemento en la posición 1 por «café»
Escribí cómo queda la lista después de cada acción y cuántos elementos tiene al final.
Combinar variables y listas
Dos listas pueden trabajar «en paralelo»: el elemento de la posición 2 de una se corresponde con el de la posición 2 de la otra. Así se guarda, por ejemplo, un producto y su precio.
| Posición | productos |
precios |
|---|---|---|
| 1 | «alfajor» | 50 |
| 2 | «jugo» | 90 |
| 3 | «pan» | 120 |
El precio del «jugo» está en la misma posición (2) de precios.
Para acumular una cantidad se usa una variable que arranca en 0 y va sumando. Se la llama acumulador.
Una tienda del barrio guarda dos listas paralelas: productos = [«alfajor», «jugo», «pan»] y precios = [50, 80, 120] (en pesos). Un programa usa una variable total que…
Una tienda del barrio guarda dos listas paralelas: productos = [«alfajor», «jugo», «pan»] y precios = [50, 80, 120] (en pesos). Un programa usa una variable total que empieza en 0, y le suma el precio de cada producto pedido por Martina, que compra un alfajor, dos panes y un jugo. Explicá cómo se relacionan las dos listas por la posición, escribí los pasos del programa que calculan total y decí cuánto vale al final.
Intercambiar valores y detectar errores
Un clásico: intercambiar los valores de dos variables. Pasa que, al asignar, el valor anterior se pierde.
Programa incorrecto, con x = 3 y y = 8:
| Bloque | x |
y |
|---|---|---|
| (inicio) | 3 | 8 |
poner x en y |
8 | 8 |
poner y en x |
8 | 8 |
Los dos terminan en 8: el 3 se perdió en el primer bloque.
Un estudiante escribe este programa para intercambiar los valores de las variables x y y, con x = 3 y y = 8: poner x en y poner y en x Seguí el programa y mostrá que no…
Un estudiante escribe este programa para intercambiar los valores de las variables x y y, con x = 3 y y = 8:
-
poner
xeny -
poner
yenx
Seguí el programa y mostrá que no logra el intercambio. Explicá por qué falla, proponé una versión corregida usando una variable auxiliar y verificala con los mismos valores.
Resumen
Volvé al principio: el juego de Valentina guarda jugador como texto, vidas como entero, tiempo como decimal y gano como lógico, y cada valor se actualiza con bloques sobre las variables.