GUIA DE ESTUDIO Algoritmos y Diseño de Progamacion

8
UNIVERSIDAD IBEROAMERICANA ASIGNATURA ALGORITMOS Y DISEÑO DE PROGRAMACIÓN H/S/S CRÉDITOS 8 TEÓRICA 2 CLAVE 21510 SIGLA ST001 PRÁCTICA 2 TOTAL 4 COORDINACIÓN PRERREQUISITOS Ninguno IMPORTANCIA DE LA ASIGNATURA ÁREA(S): Pertenece al área básica del plan de estudios, permite al estudiante obtener compete complementar la formación profesional DIMENSIÓN(ES): Forma parte de la dimensión profesional del currículum, que permite la articulación licenciatura con la calidad y eficiencia profesional del egresado al brindarle herra susceptibles de aplicarse en las diversas áreas de la licenciatura y en su vida prof COMPETENCIA(S): Contribuye a desarrollar la competencia en la organización de personas y tareas faci que es un algoritmos y como poderlo programar basándose en un lenguaje de alto nive RELACIÓN CON EL PERFIL DEL EGRESADO: Desarrollará su capacidad de abstracción y de síntesis para enfrentarse a probl que se le puedan presentar. Mejorará su capacidad para encontrar una solución creativa a problemas propues Aumentará su perseverancia y confianza para lograr su objetivo. Obtendrá mayor capacidad para trabajar en equipo. OBJETIVOS GENERALES (Al finalizar el curso el alumno será capaz de:) Los objetivos del curso Lenguaje C, son: Conocer las estructuras básicas del Le manera estructural un programa. Utilizar librerías y funciones de entrada/salid Conocer el concepto de Ingeniería de Software, así como sus orígenes e importan Identificar las diversas etapas que conforman el ciclo de vida de un proyecto d Tener la capacidad de desarrollar un producto de programación apegándose a las vida del proyecto. Mtro. Ricardo Castañeda López Página # 1

Transcript of GUIA DE ESTUDIO Algoritmos y Diseño de Progamacion

UNIVERSIDAD IBEROAMERICANAASIGNATURA ALGORITMOS Y DISEO DE PROGRAMACIN CLAVE 21510 COORDINACIN SIGLA ST001 TERICA PRCTICA TOTAL H/S/S 2 2 4 CRDITOS 8

PRERREQUISITOS Ninguno

IMPORTANCIA DE LA ASIGNATURA REA(S): Pertenece al rea bsica del plan de estudios, permite al estudiante obtener competencia informtica para complementar la formacin profesional DIMENSIN(ES): Forma parte de la dimensin profesional del currculum, que permite la articulacin de los objetivos de la licenciatura con la calidad y eficiencia profesional del egresado al brindarle herramientas informticas bsicas susceptibles de aplicarse en las diversas reas de la licenciatura y en su vida profesional COMPETENCIA(S): Contribuye a desarrollar la competencia en la organizacin de personas y tareas facilitando el entendimiento de lo que es un algoritmos y como poderlo programar basndose en un lenguaje de alto nivel RELACIN CON EL PERFIL DEL EGRESADO: Desarrollar su capacidad de abstraccin y de sntesis para enfrentarse a problemas de programacin que se le puedan presentar. Mejorar su capacidad para encontrar una solucin creativa a problemas propuestos. Aumentar su perseverancia y confianza para lograr su objetivo. Obtendr mayor capacidad para trabajar en equipo.

OBJETIVOS GENERALES (Al finalizar el curso el alumno ser capaz de:) Los objetivos del curso Lenguaje C, son: Conocer las estructuras bsicas del Lenguaje C. Disear de manera estructural un programa. Utilizar libreras y funciones de entrada/salida. Conocer el concepto de Ingeniera de Software, as como sus orgenes e importancia. Identificar las diversas etapas que conforman el ciclo de vida de un proyecto de programacin. Tener la capacidad de desarrollar un producto de programacin apegndose a las etapas del ciclo de vida del proyecto.

Mtro. Ricardo Castaeda Lpez

Pgina # 1

Conocer y emplear adecuadamente las tcnicas de la programacin estructurada.

OBJETIVOS ESPECFICOS (El alumnos ser capaz de:) Comprender el funcionamiento de las computadoras, sus partes constitutivas. Conocer el sistema de numeracin empleado por las mismas. Conocer las instrucciones de progreso y su relacin con los lenguajes de programacin. Comprender y utilizar el mtodo de resolucin de problemas mediante el uso de algoritmos. Resolver problemas mediante pseudocdigos. Representar los problemas mediante diagramas de flujo. Resolver problemas computaciones con diversos mtodos de ordenamiento y bsqueda. Conocer el lenguaje C, su sintaxis, e instrucciones de control de flujo. Conocer tipos de datos avanzados arreglos, estructuras, uniones y campos de bit. Conocer la programacin modular mediante el uso de funciones, subrutinas y su utilizacin en lenguaje C.

TEMAS INTRODUCCIN AL DESARROLLO DE APLICACIONES USANDO C. Caractersticas del lenguaje C. Programacin secuencial e iterativa. Estructuras fundamentales de la programacin. Nacimiento y caractersticas principales del lenguaje C. Estructuras bsicas de programacin en C. Conceptos fundamentales: tipos de datos, variables, tipos y declaracin de variables, constantes, alcance de las variables. Utilizacin del compilador de C. Ficheros que componen un proyecto en C. CONTROL DEL FLUJO DEL PROGRAMA. Sentencias de control. Expresiones condicionales. Sentencias condicionales: Sentencias if-then-else y sentencias switch-case. Sentencias de repeticin: sentencias while y sentencias for. Bucles anidados. Funciones y procedimientos. Concepto y utilizacin de funciones. Concepto y utilizacin de procedimientos. Llamadas a funciones y procedimientos. Paso de parmetros. Recursividad. Diseo estructural de programas. La biblioteca estndar de funciones. MATRICES Y PUNTEROS. Punteros. Concepto de puntero y su importancia en C. Utilizacin de punteros. Problemas ligados a la utilizacin de punteros. Matrices. Concepto de matrices. Manipulacin de matrices. Matrices de varias dimensiones. Las matrices vistas como punteros. Paso de matrices como parmetros.

Mtro. Ricardo Castaeda Lpez

Pgina # 2

EVALUACIN REQUISITOS PARA ACREDITAR EL CURSO: 1. Las clases se iniciarn en punto de la hora asignada para cada materia. 2. Se pasar lista de asistencia en las hojas oficiales al inicio de la clase, 10 minutos se dar de tolerancia. Para evitar problemas no se admite el registro de retardos, el alumno podr pasar a tomar clase pero con falta. 3. Cumplir con el 80% de las asistencias totales del semestre

4.5. 6. a. b. c. d. e.

7. 8. Conservar el orden y la limpieza en los salones de clase. 9. Estar muy conscientes de su situacin acadmica, ya que bajo ningn motivo se har cambio de calificacin. 10. El alumno que llegue a cubrir 3 reportes ser dado de baja de la materia ( Chat, material no relacionado con lamateria). 11. La escala de calificacin final ser del 0 al 10, respetando la siguiente escala: De 0.0 a 5.99 = 5 De 6.0 a 6.5 = 6 De 6.6 a 7.5 = 7 De 7.6 a 8.5 = 8 De 8.6 a 9.5 = 9 De 9.6 a 10.0 = 10 Las calificaciones obtenidas durante el semestre se manejarn con un decimal, y la calificacin final ser cerrada, es decir, parte entera.

No se permite la entrega tarda de tareas, por ello se tiene las dos horas de clase. Es responsabilidad del alumno leer con antelacin el material que se va a cubrir en clase. Debido a que interfieren con el desarrollo de las sesiones de clase, est prohibido, durante stas: Recibir o hacer llamadas va telfonos celulares. Introducir e ingerir alimentos y bebidas. Fumar en el interior de los salones. Entrar y salir indiscriminadamente del saln. Realizar festejos o convivos. Asumir una conducta respetuosa con el Profesor o con sus Compaeros.

ENTREGA DE CALIFICACINES FINALES, ES EL DIA 4 DE DICIEMBRE DEL 2009, EN EL SALN Y HORA DE CLASE.SE SUGIERE QUE LA CALIFICACIN DEL ALUMNO SE ASIGNE CON BASE EN: INSTRUMENTO Tres exmenes parciales Proyecto final Participacin en clase Entrega de tareas Ejercicios realizados en clase PORCENTAJE 30% 30% 5% 20% 15% ASPECTOS A EVALUAR

Mtro. Ricardo Castaeda Lpez

Pgina # 3

FECHAS DE EXAMENES 1 Examen Parcial 21 al 25 Sept. 2 Examen Parcial 26 al 30 Oct. 3 Examen Parcial 16 Nov Entrega del Trabajo Final 27 Nov. BIBLIOGRAFIA: WALTER SAVITCH RESOLUCIN DE PROBLEMAS CON C++ EL OBJETIVO DE LA PROGRAMACIN SEGUNDA EDICION H.M. DEITEL y P.J. DEITEL, Como programar en C/C++, Prentice Hall, ltima edicin CORREA Uribe, Guillermo. Desarrollo de Algoritmos y sus aplicaciones en Basic, Pascal, COBOL y C. MCGraw Hill. RODRGUEZ Almeida Miguel Angel. Metodologa de la Programacin a travs del pseudocdigo. MCGraw Hill. JOYANES Aguilar, Luis. Metodologa de la Programacin, Diagramas de flujo, Algoritmos y Programacin Estructurada. MCGraw Hill. Comandos Bsicos de UNIX. (http://dune.mcs.kent.edu/~farrell/sys95/unix1/basic_commands.html)

PROGRAMA DESGLOSADO: Tema 1)Que es un algoritmo. Objetivos especficos 1) Definicin de Algoritmo. herramientas para el diseo de algoritmos 2) Pseudocdigo. diagramas de flujo. Diagramas NassiSchneiderman. 3) Diseo de algoritmos para la solucin de problemas prcticos. Concepto de programa. Estructura general de un Horas Actividades y recursos Evaluacin

2)Estructura general de un

Mtro. Ricardo Castaeda Lpez

Pgina # 4

programa

3)Historia del lenguaje C

programa. Seccin de identificacin. Seccin de datos. Seccin de procedimientos. Concepto de programa. Estructura general de un programa. Seccin de identificacin. Seccin de datos. Seccin de procedimientos. 1.- Surgimiento.

2.- Caractersticas. 3.- Biblioteca estndar. 4.- Componentes. 5.- C++ 6.- Entorno Tpico de C. 4)Conceptos 1.- Identificadores y palabras bsicos de C reservadas. 2.- Tipos de datos. 3.- Variables, declaraciones. 4.- Expresiones y asignaciones. 5.- Instrucciones. 6.- Constantes simblicas. 7.- Operadores: Aritmticos, Monarios, Incremento y Decremento, Igualdad y Relacionales, Asignacin. 5)Funciones de 1.- Introduccin. Entrada/Salida 2.- Archivos de cabecera. 3.- getchar() y putxhar() 4.- Scanf() y printf() 5.- gets, puts. 6) Estructuras 1.- Introduccin. de Control 2.- If, if/else 3.- switch 4.- For, break 5.- while 6.- do/while 7)Funciones 1.- Introduccin. 2.- Clasificacin de las funciones. 3.- Funciones matemticas. 4.- Definicin y acceso de una funcin. 5.- Prototipo de funciones.

Mtro. Ricardo Castaeda Lpez

Pgina # 5

Tema 8) Estructuras estticas

6.- Paso de argumentos a funciones. 7.- Recursividad. Objetivos especficos 1.- Introduccin a los arreglos, definir tipos. 2.- Declaracin de un arreglo. 3.- Procesamiento de arreglos. 4.- Paso de arreglos a funciones. 5.- Introduccin a las estructuras (struct). 6.- Declaracin . 7.- Procesamiento de estructuras.

Horas

Actividades y recursos

Evaluacin

Sean bienvenidos!Es un placer para m el compartir con ustedes este espacio de aprendizaje, en el que todos viviremos una experiencia nueva y retadora en el uso de la computadora como una herramienta para nuestro beneficio. Es importante declarar que nos desarrollaremos en un espacio de respeto y responsabilidad, para asegurar el xito individual y a la vez, grupal. No dudes en realizar preguntas, slo as tendrs respuestas que te ayudarn a desenvolverte de una manera efectiva y eficiente durante el curso. Quiero que veas a cada uno de tus compaeros y a tu profesor como una oportunidad para aprender, confa en tus habilidades y en la forma en que se desarrollarn con el paso del tiempo.

Te deseo lo mejor y bienvenidos al curso !!La metodologa para el curso es la siguiente: Exposiciones por parte del profesor para inducir el tema principal. Exposiciones por parte de los alumnos para reafirmar los conocimientos de los subtemas. Formacin de equipos de tres o cuatro personas personas, dnde se designar un lder de equipo. El curso se divide en tres partes: Trabajo terico (en equipo).

Mtro. Ricardo Castaeda Lpez

Pgina # 6

Lecturas de temas afines a la materia (individual). Trabajo prctico (individual y en equipo).

El cdigo de tica que seguiremos para esta materia comprende los siguientes puntos: 1. Respeto: la opinin de todos es valiosa, debemos generar un espacio de apertura y respeto para que todos sientan confianza para expresar sus puntos de vista. El respeto es un factor que permite entablar conversaciones para la accin. 2. Confianza: este es un espacio donde debes desarrollarte con confianza, es un espacio de aprendizaje y se vale equivocarse. El aprendizaje ser tu herramienta para que poco a poco las equivocaciones disminuyan y los aciertos aumenten. 3. Puntualidad: en las sesiones presenciales ofrezco puntualidad, por lo tanto tambin te pido puntualidad a las mismas. La puerta permanecer abierta hasta diez minutos despus de la hora de entrada, una vez pasado ese tiempo, te pido que no interrumpas el proceso dentro de la sala de computadoras. 4. Cumplimiento: las tareas individuales y las asignaciones de trabajo en equipo deben cumplirse en los tiempos establecidos, el ser cumplido tiene consecuencias agradables. 5. Calidad en el trabajo: tus trabajos deben evolucionar en el aspecto de calidad, tanto en presentacin como en contenido, debes mostrar avances en este rubro, el trabajo de calidad tendr su justo reconocimiento. 6. Honestidad: tus trabajos debern ser propios, y eso slo t o tu equipo lo sabe, por lo que se establece un vnculo de confianza en el sentido de que, eres honesto al entregar material. La honestidad tambin va ligada con el aspecto de la cita al autor del material que uses, por lo tanto te pido que menciones al autor intelectual de la obra que consultaste. 7. Participacin: quiero que todos seamos entes activos en el desarrollo de la materia, el aprendizaje es vivencial, te invito a que seas un agente de cambio en el transcurso de este semestre. 8. Trabajo en equipo: trabajar en equipo no significa dividir el trabajo, esto es slo una parte; tambin significa coordinar acciones, analizar, sintetizar, ser tolerante, ser flexible, aprender de las habilidades y deficiencias de uno mismo y del resto de los integrantes del equipo. Cuando trabajes en equipo, te pido compromiso y honestidad para con tus compaeros. 9. Uso de un correcto lenguaje en los foros de discusin: no se vale usar un lenguaje agresivo y descalificador en los foros de discusin, el uso y abuso de este tipo de

Mtro. Ricardo Castaeda Lpez

Pgina # 7

lenguaje tiene consecuencias, si alguien decide usarlo, deber estar dispuesto a responder por sus acciones. 10. Aprecio por el equipo computacional: el hardware y el software con el que cuenta la UNIVERSIDAD IBEROAMERICANA, CAMPUS SANTA FE. Al finalizar el curso el alumno ser capaz de: 1. Evaluar la prctica de los valores y actitudes que se muestran a continuacin a travs de una reflexin personal: Respeto. Honestidad. Responsabilidad. Aprecio por la cultura.

Visin del entorno internacional. 2. Evaluar la importancia de los avances tecnolgicos en el mundo en que vivimos a travs del conocimiento y reconocimiento de los mismos. 3. Aplicar los conocimientos en el rea de los sistemas computacionales para elegir la herramienta apropiada a sus necesidades. 4. 5. Enriquecer sus conocimientos en el rea de la vanguardia tecnolgica. Realizar la reflexin del proceso de aprendizaje al que ha sido expuesto.

Mtro. Ricardo Castaeda Lpez

Pgina # 8