Vous êtes sur la page 1sur 51

Introducción a lenguajes

de programación a través
de animaciones y
videojuegos (2)
Iris Carolina Dipierri
Marcos Javier Gómez
La clase de hoy
Pero antes, recordemos que hicimos
la primer clase
Empezamos a crear nuestros
propios programas utilizando
Gobstones
¿Qué es Gobstones?
Gobstones es un lenguaje de programación
desarrollado y diseñado por docentes de la
Universidad de Quilmes para introducir a personas sin
ninguna experiencia previa al mundo de la
programación
¿Qué es un lenguaje de programación?

Wikipedia nos dice que:

“Un lenguaje de programación es un lenguaje formal que


especifica una serie de instrucciones para que una
computadora produzca diversas clases de datos. Los
lenguajes de programación pueden usarse para crear
programas que pongan en práctica algoritmos específicos los
cuales controlan el comportamiento físico y lógico de una
computadora.”
Lenguajes de Programación

Los lenguajes de programación están


conformados por reglas sintácticas y
reglas semánticas.
Sintaxis de un lenguaje

Podemos definirla como la “forma visible” del lenguaje.


Conjunto de reglas estructurales que tenes que seguir para
escribir un programa que pueda ser entendido por la
computadora.
¿Qué reglas sintácticas tenía
Gosbtones como lenguaje?
Examen Sintáctico de Gobstones
Semántica de un lenguaje

El significado de sus elementos y expresiones del lenguaje


de programación. Qué harán estás estos elementos
cuando los utilicemos.
¿Cómo se comportan las
estructuras e instrucciones
fundamentales en Gobstones?
program (programa principal)

Cuerpo del programa. Se


encuentra el código que se
ejecutará.

Palabra reservada dentro del


lenguaje. No puede ser utilizada
para otra cosa.
Estructura Condicional
Condición de verdad. Puede
tomar el valor de verdadero o
falso.

Cuerpo del condicional. Se


encuentra el código que se
ejecutará el caso que la
Palabra reservada dentro del condición sea verdadera.
lenguaje. No puede ser utilizada
para otra cosa. Indica comienzo
estructura condicional.
Estructura Condicional

La estructura condicional es una instrucción o grupo


de instrucciones que se pueden ejecutar o no en
función del valor de una condición. Nos permite tomar
decisiones en nuestros programas.
Estructura Ciclo Repetir
Parámetro que indica la cantidad
de veces que se repetirá el código
del cuerpo.

Cuerpo del ciclo. Se


encuentra el código que se
ejecutará en número de
Palabra reservada dentro del veces definido
lenguaje. No puede ser utilizada anteriormente.
para otra cosa. Indica comienzo
estructura repeatl.
Procedimientos
Indica los parámetros que tomará
el procedimiento definido.

Nombre elegido para nuestro


procedimiento. Tiene que estar
relacionado con lo que hace.
Cuerpo del procedimiento.
Palabra reservada dentro del Se encuentra el código
lenguaje. No puede ser utilizada que se ejecutará al
para otra cosa. Indica comienzo momento de llamar al
estructura procedure. procedimiento.
Procedimientos

Se le llama procedimiento a un segmento de código separado del


bloque principal, el cual puede ser invocado en cualquier momento
desde ésta u otra subrutina.
Una procedimiento, al ser llamada dentro de un programa, hace que el
código principal se detenga y se dirija a ejecutar el código de la
subrutina. Nos permite dividir el problema en partes.
¿Qué necesitamos para crear
nuestro propio PacMan?
¿En donde escribíamos nuestros
programos?
Entornos de Programación
Python
● Existen una gran cantidad de lenguajes de
programación. Pero dependiendo de lo que
necesitemos, cuál puede facilitar nuestras tareas.
● Para desarrollar el videojuego PacMan vamos a
utilizar un lenguaje llamado Python.
Abrimos y exploramos la plataforma
Pilas Engine
Ejecutar código escrito
en el editor

Sector de Diseño de nuestro


juego

Editor de Código

Consola Interactiva
Consola Interactiva
El intérprete nos permite ejecutar código Python de manera
interactiva, de esta forma podemos ir probando a cada
momento el código y asegurarnos de que funciona bien
antes de incorporarlo definitivamente a nuestros
programas. Al momento de ejecutar nuestros programas,
nos mandará diferentes mensajes de error, para ayudarnos
a detectar posibles errores de sintaxis.
Editor de Código

Es el lugar donde escribiremos


nuestros programas.
Sector de Diseño de nuestro juego

Veremos los resultados gráficos del


programa que estamos creando.
Sintaxis de Python
Al ser un lenguaje de programación distinto a Gobstones,
tiene sus propias reglas (por lo tanto program no existe y
las {} tienen otro uso).
Program en Gobstones hace referencia al programa
principal que se ejecutará. En Pilas Engine el programa
principal se escribe en:
Sintaxis de Python

Entre estas dos instrucciones se


escribé el programa que será
ejecutado por pilas engine
Sintaxis de Python
En Python es muy importante la indentación del código
que escribamos. Es más, es regla sintáctica, por lo cual
debemos respetar la misma para no tener errores de
sintaxis o comportamientos no esperados en nuestros
programas. Con indentación hacemos referencia a que no
se utilizan llaves que marquen dónde empieza o termina su
código. El único delimitador son dos puntos (:) y el
sangrado del propio código.
Sintaxis de Python

Código correctamente indentado Código incorrectamente indentado


Sintaxis de Python

Es decir, que un espacio o conjunto de espacios que no


mantengan la identación pueden hacer que mi programa
no sea sintácticamente correcto y por ende no se ejecute.
¿Algo o alguién nos puede ayudar a identificar estos
problemas de sintaxis? Si, la consola interactiva. ¿Cómo?
Consideremos el siguiente ejemplo
Al ejecutar el programa anterior

Veamos en detalle el
mensaje de la consola
Al ejecutar el programa anterior
Nos está avisando que tenemos un
error de indentación

Nos está avisando en que línea o


cerca de qué sector está el problema

Nos muestra el error


Primer desafío
Exploramos el código que se encuentra en el
archivo: pacman_inicial.py. Observamos
principalmente con detalle el nombre de
funciones prestando atención a los
comentarios sobre las mismas, sin profundizar
en su contenido. ¿Hay alguna función que
nos permita crear a Pacman?
Definición de la Función crear_pacman
Palabra reservada dentro del
lenguaje. No puede ser utilizada
para otra cosa. Indica comienzo
definición de una función o
procedimiento.

Cuerpo del procedimiento/función. Se encuentra el código que se


ejecutará de invocar procedimiento/función. El inicio del mismo se
marca con los : y se tienen que mantener la sangría como se me
en la imagen.
Primer desafío
Debemos llamar a la función crear_pacman
utilizando como argumentos la posición en x e
y en donde queremos que aparezca.
Segundo Desafío
Crear 5 instancias de objetos de la Clase
Pastilla, en diferentes posiciones del plano,
utilizando la función crear_pastilla.
Tercer Desafío
Crear una fila de pastillas, tal que cada pastilla
este separada de la siguiente por 20 píxeles.
Pantalla Pixelada
La pantalla está compuesta por píxeles. Para
conocer exactamente los límites de ancho y
alto, y la posición exacta de cada para de
coordenadas podemos hacer lo siguiente:
Pantalla Pixelada
La pantalla está compuesta por píxeles. Para
conocer exactamente los límites de anchto y
alto, y la posición exacta de cada para de
coordenadas podemos hacer lo siguiente:
¿Hay repeat en Python?
En python contamos con la estructura de
control ciclo repeat. Pero antes conoceremos a
la función range.

range(min, max)
Función Range
range(min, max)
Genera una sucesión de números consecutivos que
comienza en min y finaliza en max - 1. Ejemplos:
range(0, 5) = [0, 1, 2, 3, 4]
range(-3, 7) = [-3, -2, -1, 0, 1, 2 , 3, 4, 5, 6]

Entonces range nos permitiría generar la secuencia de


posiciones en el eje x donde crear nuevas pastillas.
Un ejemplo de ciclo for (repeat en Python)
for posicion_x in range(-10, 10):
crear_pastilla(posicion_x, 100)

Esto nos dice que la variable posicion_x irá tomando uno a


uno los valores de la secuencia generada por range:
[-10,..,9] y creará una pastilla en esa posicion_x,
manteniendo siempre fija la coordenada y en 100.
Tenemos un problema, están muy juntas las
pastillas
Función Range tiene otro parámetro
range(min, max, salto)
Genera una sucesión de números intercalada entre el
salto definido:

range(0, 20, 3) = [0, 3, 6, 9, 12, 15, 18]


range(-20, 70, 10) = [-20, -10, 0, 10, 20, 30, 40, 50, 60]
Entonces range nos permitiría generar la secuencia de
posiciones en el eje x espaciadas, donde crear nuevas
pastillas.
Un ejemplo de ciclo for (repeat en Python)
for posicion_x in range(-300, 300, 20):
crear_pastilla(posicion_x, 100)

Esto nos dice que la variable posicion_x irá tomando uno a


uno los valores de la secuencia de 20 en 20, generada por
range: [-300,..,300] y creará una pastilla en esa posicion_x,
manteniendo siempre fija la coordenada y en 100.

Vous aimerez peut-être aussi