ING1310 – Introducci´on a la Computaci´on
Introducci´ on
Programa y Conceptos Iniciales
Carlos Reveco [email protected]
Facultad de Ingenier´ıa/Universidad de los Andes/Chile
Rev : 150
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 1 / 33
En esta clase
1 Motivaci´on
2 Programa del curso Clases
Evaluaciones Promedio Final Asistencia y Ejercicios Moodle
3 Conceptos Iniciales
Resoluci´on de Problemas Diagramas de flujo
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 2 / 33
Motivaci´ on
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 3 / 33
¿Y c´ omo funcionan estos aparatos?
Los computadores no nacieron sabiendo. . . alguien les debe decir como hacer su trabajo. . . para eso existen los programas (software). . . y para crear los programas est´an los programadores.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 4 / 33
Programa
• Un software es un conjunto de instrucciones que utilizando los componentes del computador permite realizar una tarea espec´ıfica.
• Los softwares son implementados por personas, no por m´aquinas, ustedes est´an perfectamente calificados para hacerlo.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 5 / 33
Hardware/Software
Figura:Relaci´on software, sistema operativo y hardware.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 6 / 33
Programa del curso
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 7 / 33
Programa del curso
Clases
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 8 / 33
C´ atedras
• Lunes - Miercoles - Viernes 8:30 C-22
• Martes - Viernes 13:30 C-22
• Laboratorios - Auxiliares → Martes y Jueves 8:30
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 9 / 33
Programa del curso
Evaluaciones
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 10 / 33
Pruebas
• 2 Pruebas y un Examen
• Son evaluaciones escritas, con 3 preguntas, cada una de las cuales se eval´ua con nota de 1 a 7.
• La rendici´on de todas las pruebas es obligatoria.
• Las ausencias deben ser justificadas a la Facultad.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 11 / 33
Tareas
• Parte importante del Aprendizaje del curso.
• 3 Tareas individuales para la casa (todas valen lo mismo).
• El Plazo de las tareas son de 2 semanas.
• Todas son obligatorias
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 12 / 33
Laboratorios
• 8 laboratorios durante el semestre.
• 4 de ellos evaluados.
• Individuales.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 13 / 33
Programa del curso
Promedio Final
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 14 / 33
Promedio
• Promedio Final
Nf0 = 0,2 × P1+ 0,2 × P2+ 0,2 × ¯T + 0,1 × ¯L + 0,3 × E
• Condiciones extras para aprobar:
• Nf0 >= 4,0
• E >= 3,0
• Considerando las condiciones la nota final ser´ıa:
Nf =
Nf0 si se cumplen todos los requisitos m´ın{3,9, Nf0} en caso contrario
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 15 / 33
Programa del curso
Asistencia y Ejercicios
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 16 / 33
Asistencia y Ejercicios
• La asistencia no sera obligatoria.
• Se har´an ejercicios en clase, Estos ser´an convertidas a d´ecimas para las pruebas.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 17 / 33
Programa del curso
Moodle
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 18 / 33
Moodle
• Lo que est´e escrito en Moodle es informaci´on oficial, en caso de que lo que est´e escrito aqu´ı y lo que diga en clases se contradigan, la versi´on v´alida es la escrita all´ı.
• Las Clases ser´an subidas a Moodle.
• Las Tareas deben ser entregadas por este medio
• Es de su responsabilidad verificar las entregas,
• En caso de cualquier duda o pregunta pueden utilizar el foro de la p´agina o preguntarme directamente a mi mail ([email protected] o [email protected]), en caso de recibir por mail una pregunta que pueda ayudar a varias personas la publicar´e en el foro (sin decir qui´en pregunt´o) con la respuesta correspondiente.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 19 / 33
Conceptos Iniciales
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 20 / 33
Conceptos Iniciales
Resoluci´ on de Problemas
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 21 / 33
Resoluci´ on de Problemas
Cita: Albert Einstein
La formulaci´on de un problema es generalmente m´as esencial que su solu- ci´on, que puede ser simplemente una cuesti´on de destrezas matem´aticas
• La programaci´on es una disciplina cuyo objetivo es resolver problemas mediante la utilizaci´on de los recursos de un computador.
• Muy Importante!
• No existe una soluci´on ´unica para un mismo problema.
• Ahora bien, pueden haber unas m´as eficientes que otras.
• En este curso no importa (tanto) la eficiencia, sino que ustedes sean capaces de resolver los problemas que se les plantean.
• Muchas veces deber´an aplicar fuerza bruta.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 22 / 33
B´ usqueda de la soluci´ on
• La b´uqueda de la soluci´on de un problema podemos dividirla en 3 pasos:
1 Especificar los requisitos
2 Identificar los elementos participantes
3 Definir el algoritmo
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 23 / 33
Especificar los Requisitos
Cita: RAE - Requisito
Circunstancia o condici´on necesaria para algo.
• Antes de resolver el problema se debe tener claro cu´al es el problema.
• Se debe describir clara y detalladamente el problema, considerando la mayor cantidad de detalles posibles.
• Dentro de los requisitos, se debe definir la informaci´on de entrada y la salida esperada.
• Si el problema es corregir una prueba:
Entrada las respuestas del alumno, la pauta de cada pregunta.
Salida un puntaje y una nota.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 24 / 33
Identificar los elementos participantes
• Un elemento participante es todo aquel que tiene influencia en la soluci´on del problema.
• Para identificar los elementos debo realizar dos procesos:
1 Distinguir los elementos presentes directamente en los requisitos.
2 Identificar los elementos que se deben agregar para resolver el problema (Fabricaci´on Pura).
• Cada elemento tiene sus caracter´ısticas y acciones posibles de realizar
• Si el elemento es la prueba:
Caracter´ısticas el n´umero de preguntas, el autor de las respuestas, entre otras Acciones poder ver la respuesta de una pregunta, contestar una pregunta, entre
otras.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 25 / 33
Algoritmos
Cita: RAE - Algoritmo
Conjunto ordenado y finito de operaciones que permite hallar la soluci´on de un problema.
• El ´ultimo paso es definir el algoritmo que resuelve el problema.
• El algoritmo debe ser un conjunto de acciones secuenciales de los elementos participantes en la soluci´on del problema.
• Un algoritmo no puede ser descrito de forma ambigua.
• Todos debemos entender lo mismo.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 26 / 33
Ejemplo: Corregir las pruebas de un curso
1 Especificar los Requisitos
• Poner nota a la prueba de cada alumno.
Entrada Las respuestas, la pauta.
Salida Puntaje y nota de cada alumno.
2 Identificar los elementos participantes
• Pauta → Debe tener el puntaje y las respuestas v´alidas.
• Pruebas → Cada prueba debe tener una lista de respuestas y un autor.
3 Definir el algoritmo
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 27 / 33
Ejemplo: Corregir las pruebas de un curso Algoritmo:
1 Tomar la siguiente prueba de la lista de pruebas.
2 Tomar la siguiente respuesta de la prueba.
3 Comparar la respuesta con la soluci´on (pauta).
3.1 Si la respuesta es correcta aumentar el puntaje.
4 Si quedan respuestas volver al paso 2.
5 Con el puntaje calcular la nota seg´un lo definido en la pauta.
6 Si quedan pruebas volver al paso 1.
7 Publicar notas.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 28 / 33
Conceptos Iniciales
Diagramas de flujo
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 29 / 33
Definici´ on
• Un diagrama de flujo es una forma de expresar un algoritmo en un modelo.
• Permite ver gr´aficamente como se relacionan las distintas tareas que forman el algoritmo.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 30 / 33
Componentes
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 31 / 33
Componentes - Restricciones
• Las transiciones son en una direcci´on
• Una tarea puede recibir varias transiciones
• Pero solamente debe salir una transici´on.
• Las preguntas en las condiciones deben ser respondidas como Si o No
• Las condiciones tambi´en pueden recibir m´ultiples transiciones
• Y deben salir dos transiciones, una para cada posible respuesta
• Puede haber m´as de una tarea de finalizaci´on
• Y estas no pueden tener transiciones de salida.
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 32 / 33
Ejemplo: Diagrama de flujo ejemplo corregir pruebas
C.Reveco Facultad de Ingenier´ıa/Universidad de los Andes/Chile ING1310– Clase 1 33 / 33