Está en la página 1de 16

Algoritmos y Programación

ENSIA200

Nicolás E. Ozimica
Semestre de primavera de 2014

Primera clase

24 de julio de 2014
1.1: Objetivos

Objetivos generales:
Al final del curso, los alumnos deberán ser capaces de
enfrentar problemas, y como solución diseñar un algoritmo
e implementarlo en un lenguaje de programación.

2 / 14
1.1: Objetivos

Objetivos generales:
Al final del curso, los alumnos deberán ser capaces de
enfrentar problemas, y como solución diseñar un algoritmo
e implementarlo en un lenguaje de programación.

Objetivos Específicos:
Los alumnos deberán conocer a cabalidad los rudimentos del
lenguaje Visual Basic.

2 / 14
1.1: Evaluación
Tipos de evaluación:
Cinco controles cada dos o tres semanas en horario de
ayudantía.
1 prueba en la semana de solemnes, equivalente a dos
notas de controles.
1 Examen (EX)

Los cinco controles en ayudantía más la prueba solemne equivalente a dos


controles nos dan 7 notas. De estas 7 se elimina la peor nota. Con las seis
restantes se calcula el promedio de Controles (NC).

Nota final: NF = (0, 6 · NC) + (0, 4 · EX)


Aprobación: NC >= 4,0 ∧ NF >= 4,0
Examen de segunda fecha: NF >= 3,5
Eximición de examen: No hay.

3 / 14
1.1: Reglas del juego

La copia en actividades de evaluación se sanciona con nota 1.0, tanto


para el que copia como para quien se deja copiar.

Los controles se realizarán en horario de ayudantía.

La asistencia tanto a cátedra como a las ayudantías es voluntaria. Sin


embargo, lo expuesto en ellas se puede preguntar eventualmente en
los controles.

El comportamiento en clases debe ser acorde.

4 / 14
1.1: Recomendaciones

Hacer las guías de ejercicios que se les entreguen individualmente.

Leer e investigar para profundizar.

Resolver nuevos problemas o variantes.

Consultar inmediatamente al profesor cuando tengan dudas.

Aprovechar las ayudantías.

5 / 14
1.1: Contenidos
1.- Fundamentos de programación.
Presentación del curso.
Definiciones básicas.
Pasos necesarios para solucionar un problema.
Estrategias para solucionar un problema.
Diagramas de flujo.
Elementos principales.

Estructuras de control.

Variables y constantes.
Operadores y expresiones.
Pseudocódigo.
Estructuras de control en los pseudocódigos.

6 / 14
1.1: Contenidos
2.- Introducción a Visual Basic .NET
Estructura básica de un programa.
Variables.
Definición de variables.
Tipos de datos.
Conversiones básicas entre tipos de datos.
Comandos de entrada y salida en la Consola.
Control de flujo.
Condicionales.
Ciclos.
Definición de subprocesos.
Operadores y funciones aritméticas.
Arreglos y Listas.
Tipos de dato en más detalle.
Precisión de cada tipo de dato.
Conversiones más avanzadas entre tipos de datos.
Manipulación de Strings.
Lectura y escritura de archivos.
Arreglos en varias dimensiones.
Diccionarios.
7 / 14
1.2: Definiciones Generales

Algoritmo:
Procedimiento mediante el cual es posible resolver un
problema de diversa índole, y que corresponde a un conjunto
ordenado y finito de operaciones que permite hallar la
solución de un problema.

Actividad:
Cada uno de los pasos que componen un algoritmo, y que
está destinado a cumplir una cierta tarea.

Ruta:
Un camino a seguir durante la ejecución de un algoritmo.
Una ruta no necesariamente comprende todas las
actividades.

8 / 14
1.2: Definiciones Generales

Entradas/Parámetros:
Son los valores con que se nutre un algoritmo (desde el
exterior) para lograr un resultado.

Salidas:
Los resultados entregados por un algoritmos. También nos
referimos a los documentos que se puedan generar.

Mensajes:
A lo largo de la ejecución del algoritmo, puede ser necesario
comunicar al usuario determinados mensajes, ya sea para
pedirle más información, notificarlo de algún error, o
simplemente para informar en qué actividad se está en cada
momento.

9 / 14
1.2: Definiciones Generales

Variables:
Valor que se va almacenando dinámicamente en la memoria
a medida que se ejecuta un algoritmo. Estos valores pueden
estar basados en los datos de entrada.

Condiciones:
Son aquellas preguntas que se realizan durante un algoritmo
para decidir qué se debe hacer, considerando el valor de las
variables o parámetros .

Ciclos:
Ejecución repetitiva de una cierta actividad, hasta que se
cumple una o más condiciones.

10 / 14
1.3: Pasos para la resolución de un problema

Identificar los parámetros del problema, es decir, los datos necesarios


para que nuestro algoritmo funcione.

Reconocer las condiciones aplicables para lograr resolver un


problema. Determinar dónde y cómo varían las condiciones a medida
que se avanza en la resolución de un problema.

Determinar cuáles son las salidas y mensajes esperados al resolver un


problema.

Identificar los pasos necesarios para resolver el problema.

Diagramar estos pasos, para hacerse una idea gráfica de la solución.

Crear un esquema del código final (pseudocódigo)

Codificar el programa final en el lenguaje escogido.

11 / 14
1.3: Conceptos importantes

Los algoritmos a medida que avanzan, van cambiando en su estado.


Esto se ve reflejado en el valor de las variables que contiene.

Siempre se debe tener en cuenta como se afectan los valores de las


variables que determinan la ejecución de un algoritmo.

Al diseñar un algoritmo, se deben tener en cuenta todas las


condiciones posibles que pueden ocurrir y manejarlas adecuadamente.

12 / 14
1.4: Estrategia de resolución

Una de las cosas más importantes es comprender el problema que se


debe resolver.
Una forma de hacerlo es resolver a mano algunos casos, con datos
específicos, para entender a cabalidad todo el problema.

13 / 14
1.4: Estrategia de resolución

Una de las cosas más importantes es comprender el problema que se


debe resolver.
Una forma de hacerlo es resolver a mano algunos casos, con datos
específicos, para entender a cabalidad todo el problema.

Siempre es útil desmenuzar el problema completo en pequeños


subproblemas y resolverlos independientemente.
Lo que se debe desarrollar es la habilidad de identificar los subproblemas.

Éste método se conoce como Dividir para Reinar.

13 / 14
1.4: Dividir para reinar

Lo que se debe desarrollar es la habilidad de identificar los


subproblemas que componen el problema original.

Una vez completada la resolución de aquellos subproblemas, podemos


armar la solución definitiva.

Es más cómodo y eficiente resolver varios problemas pequeños, que


uno solo pero mucho más grande.

Hay que saber cuándo dejar de subdividir.

14 / 14

También podría gustarte