laboratorio de programacion i - clase 1

Post on 16-Feb-2015

341 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

TALLER: LABORATORIO DE PROGRAMACIÓN I

Prof.: Jorge GAGLIARDI Susana MELGAREJO

• EXPECTATIVAS DE LOGRO

E.E.S.T. N° 2 – ALTE. BROWN

EXPECTATIVAS DE LOGRO DEL TALLER

Poseer dominio del “pensamiento algorítmico”.

Comprender el concepto de “programa”.

Comprender la utilidad de documentar un programa. Estimular y valorar el trabajo en equipo y la ayuda solidaria entre pares. Valorar la correcta expresión oral y escrita como forma de comunicación.

¿Qué es el pensamiento algorítmico?

Es la capacidad de resolver un problema computacionalmente.

Independientemente del lenguaje y las herramientas. Pensamiento útil como forma de pensar. Pensamiento aplicable a varias ramas del conocimiento.

¿Qué es “programar”?

Programar se refiere a la descripción del desarrollo de una actividad.

Ejemplo: Quiero programar un viaje para conocer la mesopotamia en mis próximas vacaciones.

¿Cómo se programa con la computadora? A través de un lenguaje de computación

Utilizando un lenguaje de computación es posible realizar la descripción de una actividad.

IMPORTANTE: Todo programa debe contener un “propósito” (debe hacer algo).

Existen dos tipos de lenguajes de programación:

Lenguajes industriales de propósito general.

Lenguajes específicos para la enseñanza de la programación.

Dado que una de las expectativas de logro, la principal, es dominar el pensamiento algorítmico.

Y que el pensamiento algorítmico es independiente del lenguaje de programación que se utilice.

En el Taller vamos a utilizar un lenguaje específico para la enseñanza de la programación.

Una vez que se domine el pensamiento algorítmico se podrá aplicar los conceptosadquiridos a cualquier lenguaje o herramienta de programación.

Y que, para dominarlo, es primordial utilizar un lenguaje de programación.

El lenguaje de programación a utilizar en el curso será:

GOBSTONES

Características del lenguaje Gobstones Lenguaje diseñado para enseñar los fundamentos básicos.

Simple y minimalista.

Turing completo.

Con buena separación de conceptos.

Denotacional.

Cimientos sobre los que se construyen conocimientos posteriores.

Sintaxis clara sin construcciones redundantes.

Mismo poder computacional que cualquier lenguaje comercial.

Cada concepto aparece diferenciado del resto.

Busca construir pensamiento abstracto sobre elementos concretos.

Gobstones

Ventajas: Pensado para aprender a programar. Fácil de empezar a programar.

De lo concreto a lo abstracto.

Desventajas:

No es aplicable industrialmente.

No existe, aún, mucha bibliografía.

Es una herramienta en evolución.(aparecerán nuevas versiones con mejoras)

LENGUAJE DE PROGRAMACIÓN

GOBSTONESElementos que lo componen: Tablero de n filas y m columnas.

Donde n y m pueden ser cualquier número natural finito Bolitas de color.

Cada bolita posee un único color, que puede ser: Azul, Rojo, Negro o Verde.

Cabezal.Indica el casillero o celda actual o activa.

TABLERO DE GOBSTONES

Bolita de color Verde

Cabezal

9 columnas

5 filas

En cada casillero o celda puede haber muchas bolitas del mismo color.

2

Indica que en el casillero o celda hay 2 bolitas de color Verde.

Casillero o celda resaltada.

TABLERO DE GOBSTONESCOLOCAR BOLITAS DENTRO DE UN CASILLERO (O CELDA)

Ubicar el mouse en la esquina del casillero (o celda) según el color de la bolita a colocar.

AzulNegroRojo

Verde

Pulsar el botón izquierdo del mouse para agregar una bolita del color elegido. Para agregar más bolitas volver a pulsar dicho botón.

TABLERO DE GOBSTONESSACAR BOLITAS DE UN CASILLERO (O CELDA)

Ubicar el mouse en la esquina del casillero (o celda) según el color de la bolita a sacar.

AzulNegroRojo

Verde

Pulsar el botón derecho del mouse para sacar una bolita del color elegido. Para sacar más bolitas volver a pulsar dicho botón.

TABLERO DE GOBSTONESDESPLAZAMIENTO POR EL TABLERO

Para desplazarse por el tablero utilice las flechas del teclado.

N

S

EO

PROGRAMA GOBSTONES

Todo programa GOBSTONES está formado por un texto que describe cómo transformar un tablero inicial en un tablero final.

Ejemplo:Transformar un tablero vacío en uno que contenga un cartel de bienvenida.

TABLERO INICIAL

PROGRAMA GOBSTONES

TABLERO FINAL+ =

COMANDOS BÁSICOS DE GOBSTONES

Poner ( ) Pone 1 bolita del color que se indica entre paréntesis en la celda donde está posicionado el cabezal.

Ejemplo: Poner (Rojo)

Pone 1 bolita roja en la celda donde está posicionado el cabezal,

Mover ( ) Mueve el cabezal un casillero (o celda) hacia la derecha, izquierda, arriba o abajo. La dirección del movimiento está dado por el punto cardinal que le corresponde.

DERECHA -> EsteIZQUIERDA -> OesteARRIBA -> NorteABAJO -> Sur

Ejemplo: Mover (Este) Mueve el cabezal un casillero (o celda) hacia la derecha.

N

S

EO

BLOQUE DE COMANDOS

Un bloque de comandos está formado por una secuencia de comandos separados por un salto de línea o por “;”.

Los bloques deben estar delimitados al comienzo y al final por llaves.

Sintaxis:

Bloque = { comando1 ; comando2 ; etc. }

BLOQUE DE COMANDOSoBloque = { comando1

comando2etc. }

Ejemplo:

Diseñar un bloque que coloque una bolita de cada color en la celda actual.

BLOQUE DE COMANDOSDiseñar un bloque que coloque una bolita de cada color en la celda actual.

{ Poner (Azul) ; Poner(Negro) ; Poner(Rojo) ; Poner(Verde) }o

{ Poner (Azul)Poner(Negro)Poner(Rojo)Poner(Verde) }

o{ Poner (Azul)

Poner(Negro)Poner(Rojo) ; Poner(Verde) }

BLOQUES EQUIVALENTES

BLOQUES EQUIVALENTESSon aquellos bloques que resuelven el mismo problema codificados de distinta manera.

También sería otro bloque equivalente el siguiente:

{ Poner (Verde) ; Poner(Rojo) ; Poner(Azul) ; Poner(Negro) }

Por lo tanto…

¡EXISTEN INFINITAS FORMAS DE RESOLVER CADA PROBLEMA!

Entonces…¿Cómo se escribe un programa en Gobstones?

Describiendo un procedimiento.

Un procedimiento se escribe colocando “procedure” seguido de un bloque de comandos.

Un programa codificado en Gobstones puede llegar a tener varios procedimientos. El principal se denomina “Main()” y se coloca al final de la codificación (si existen varios).

En nuestro ejemplo la codificación completa en Gobstones sería:

procedure Main() { Poner (Azul)

Poner(Negro)Poner(Rojo)Poner(Verde)

}

Ya estaría terminada la codificación del problema.

Próximo paso: chequear si todo está bien escrito

Significa: PRINCIPAL

“chequear si todo está bien escrito” ?

¿Qué significa:

Que todo esté bien escrito para que la computadora “lo entienda”.

O sea que la sintaxis sea correcta. Todo debe ser escrito correctamente, según las pautas seguidas por el lenguaje Gobstones.

El chequeo de la sintaxis en la codificación de un programa en Gobstones se realiza en el entorno de trabajo, accediendo en el menú a la opción “Gobstones” y dentro de esta accediendo al submenú “Chequear” o directamente pulsando laTecla F10.

Si el chequeo muestra errores de codificación deberán ser corregidos y vuelto a chequear la codificación del programa.

Si el chequeo da por resultado:“El programa está bien formado. “

¡¡¡ El programa está listo para ser ejecutado. !!!

¡¡¡ Recordad !!!

Para que la ejecución sea satisfactoria el programa deberá cumplir con el “propósito establecido”.

¡¡¡ Recordad !!!

La ejecución del programa transforma un “tablero inicial” en un “tablero final”.

CUIDADOS A TENER EN CUENTA AL ESCRIBIR UN PROGRAMA EN GOBSTONES

procedure Main() { Poner (Azul)

Poner(Negro)Poner(Rojo)Poner(Verde)

}

colocar delimitadores del bloquecolocar en minúscula

colocar en mayúsculas

Y, por supuesto,… escribir todo CORRECTAMENTE!!!

… procedure, Main(), Poner, Azul, Negro, Rojo y Verde.

pensemos …

Antes de ejecutar el programa…

¿Sólo la computadora deberá “entender” nuestra codificación?

NOTambién es “importantísimo” que sea

“entendida” por los humanos.

En general, los programadores trabajan en equipos de profesionales. Por lo tanto, los programas deben ser codificados en forma bien clara y documentada. De esta manera el código podrá ser entendido por cualquier persona del equipo.

Por lo tanto, al programar, recuerde que deberá realizar lo siguiente:

Escribir correctamente el programa respetando la sintaxis de los distintos comandos de Gobstones.Documentar eficientemente el programa especificando el propósito del mismo y describiendo los pasos realizados. (*)Adoptar y utilizar un “estilo” al describir el programa.

(*) La documentación es imprescindible para que el desarrollo del programa pueda ser compartido por todos los integrantes del equipo.

¿Cómo se documentan los programas en Gobstones?

La documentación puede realizarse a través de “comentarios”.

Existen dos tipos de comentarios:

de una línea

se colocan los caracteres // en la misma línea del comando y luego el comentario.

Ejemplo:

Poner(Rojo) // pone una bolita de color rojo.

de varias líneas

se colocan los caracteres /* al comienzo de la primer línea del comentario y los caracteres */ al finalizar el mismo.

Ejemplo:

/* el siguiente comando coloca una bolita de color rojo en la celda actual */

Poner(Rojo)

¿Cómo se documenta la codificación?

Un primer avance en este tema consiste en colocar al comienzo del programa el “propósito” del mismo. O sea, lo que el programa debe hacer y para el cual fue realizado.

Ejemplo:

/* Propósito: colocar una bolita de color rojo en la celda actual */

El propósito se manifiesta a través de un comentario multilíneal.

¿Qué significa “escribir con estilo”?

Escribir con estilo significa respetar pautas al codificar. Desarrollar una codificación prolija, clara, entendible por todos. Homogénea. Coherente.Ejemplos:

Utilizar sangrías a fin de clarificar la ubicación de los bloques. Documentar el programa colocando comentarios adecuados. Ser homogéneo y coherente en la escritura.

Ejercicios

1) Colocar una bolita de cada color en la celda actual.

2) Colocar en la celda actual una bolita azul, dos bolitas negras, tres bolitas rojas y cuatro bolitas verdes.

3) Colocar cuatro bolitas rojas en la celda actual y en las tres celdas a la derecha de la celda actual.

4) Colocar una bolita de cada color en la celda actual y en las celdas que estén ubicadas a la derecha, a la izquierda, arriba y debajo de la celda actual.

5) Colocar una bolita de cada color en cuatro celdas del tablero de forma tal que formen un cuadrado de dos celdas de lado.

6) Colocar bolitas en las celdas del tablero de forma tal que pueda leerse la palabra “HOLA”. (utilice para cada letra tres columnas, cinco filas y deje una columna en blanco entre letras)

top related