12.07.2015 Views

ETD-1024 - Instituto Tecnológico de Aguascalientes

ETD-1024 - Instituto Tecnológico de Aguascalientes

ETD-1024 - Instituto Tecnológico de Aguascalientes

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

1.- DATOS DE LA ASIGNATURANombre <strong>de</strong> la asignatura : Programación EstructuradaCarrera : Ingeniería ElectrónicaClave <strong>de</strong> la asignatura : <strong>ETD</strong>-<strong>1024</strong>SATCA 1 2-3-52.- PRESENTACIÓNCaracterización <strong>de</strong> la asignatura.Esta asignatura aporta al perfil profesional, la capacidad para <strong>de</strong>sarrollaraplicaciones en un lenguaje <strong>de</strong> programación <strong>de</strong> alto nivel, para la solución <strong>de</strong>problemas relacionados con las diferentes disciplinas en el área.Las competencias adquiridas en la asignatura permitirán al estudiante <strong>de</strong>sarrollaraplicaciones <strong>de</strong> computo en el modo <strong>de</strong> consola, las cuales podrán facilitar lasolución <strong>de</strong> problemas <strong>de</strong> ingeniería, tales como los fenómenos físicos cubiertos enla asignatura <strong>de</strong> mecánica clásica, circuitos <strong>de</strong> corriente directa estudiados enelectricidad y magnetismos, estadística <strong>de</strong>scriptiva <strong>de</strong>finida en la materia <strong>de</strong>probabilidad y estadística.El <strong>de</strong>sarrollo <strong>de</strong> programas estructurados aporta las bases <strong>de</strong> programación para lasolución <strong>de</strong> problemas <strong>de</strong> cálculo en ingeniería y para el <strong>de</strong>sarrollo <strong>de</strong> programas <strong>de</strong>aplicación con interfaces graficas <strong>de</strong> usuario. Es un recurso valioso que permite laimplementación <strong>de</strong> los algoritmos <strong>de</strong> la materia <strong>de</strong> análisis numérico.Intención didáctica.En la unidad I se aborda el tema <strong>de</strong> la importancia <strong>de</strong> la programación <strong>de</strong>computadoras para la resolución <strong>de</strong> problemas <strong>de</strong> ingeniería. Se sugiere que eldocente presente al estudiante algunos programas <strong>de</strong> aplicación utilizados endiferentes áreas. Para el diseño <strong>de</strong> algoritmos se pue<strong>de</strong>n abordar problemas <strong>de</strong>lárea <strong>de</strong> las ciencias básicas <strong>de</strong> la ingeniería, por ejemplo: Física, Matemáticas yProbabilidad y Estadística.Una segunda unidad se <strong>de</strong>stina al estudio <strong>de</strong> los elementos propios <strong>de</strong>l lenguaje <strong>de</strong>programación. La aca<strong>de</strong>mia correspondiente <strong>de</strong>berá seleccionar el lenguaje <strong>de</strong>programación más a<strong>de</strong>cuado a su entorno laboral, así como la plataforma <strong>de</strong><strong>de</strong>sarrollo a utilizar. Es <strong>de</strong> suma importancia que los temas establecidos en esta1Sistema <strong>de</strong> Asignación y Transferencia <strong>de</strong> Créditos Académicos


unidad sean cubiertos con la mayor profundidad que sea posible. Se recomienda unenfoque progresivo, en el cual se vayan <strong>de</strong>sarrollando aplicaciones simples que<strong>de</strong>muestren el uso a<strong>de</strong>cuado <strong>de</strong> cada uno <strong>de</strong> los elementos <strong>de</strong>l lenguaje y a medidaque se avanza en el programa, construir aplicaciones más complejas y funcionales,integrando los conocimientos previamente adquiridos.La tercera unidad aborda la metodología <strong>de</strong> organización <strong>de</strong> código basada en laprogramación modular que permita una mayor flexibilidad tanto en su reutilizacióncomo en su mantenimiento. Se plantea el uso <strong>de</strong> bibliotecas <strong>de</strong> funciones quepermitan la entrada y salida <strong>de</strong> datos, su almacenamiento permanente en archivos yel tratamiento <strong>de</strong> datos <strong>de</strong> tipo ca<strong>de</strong>na. Se recomienda <strong>de</strong>sarrollar programas queintegren múltiples alternativas <strong>de</strong> operación mediante el uso <strong>de</strong> menús, algoritmosrecursivos, implementación <strong>de</strong> métodos numéricos por medio <strong>de</strong> funciones.En la cuarta unidad se introduce un tema <strong>de</strong> gran relevancia para la carrera; lacomunicación con el mundo exterior. Se propone el estudio <strong>de</strong> los puertos <strong>de</strong>comunicación RS-232 y Paralelo. Es recomendable que se <strong>de</strong>sarrollen aplicacionesenfocadas al envío y recepción <strong>de</strong> datos con fines <strong>de</strong> adquisición y procesamiento,así como <strong>de</strong> control e interacción <strong>de</strong> dispositivos o actuadores <strong>de</strong> diferentes tipos.El docente <strong>de</strong>be contar con los conocimientos necesarios en cuanto a laprogramación en un lenguaje estructurado <strong>de</strong> alto nivel. De igual manera <strong>de</strong>befomentar en el estudiante el interés por el <strong>de</strong>sarrollo <strong>de</strong> programas para la búsqueda<strong>de</strong> soluciones a problemas existentes en el área (simulación, instrumentación,análisis, etc.). Debe contar con el perfil propio <strong>de</strong> la carrera.


• Preocupación por la calidad• Búsqueda <strong>de</strong>l logro


4.- HISTORIA DEL PROGRAMALugar y fecha <strong>de</strong>Participanteselaboración o revisiónRepresentantes <strong>de</strong> los <strong>Instituto</strong>sTecnológicos <strong>de</strong>:<strong>Instituto</strong> TecnológicoSuperior <strong>de</strong> Irapuato <strong>de</strong>l24 al 28 <strong>de</strong> agosto <strong>de</strong>2009.Desarrollo <strong>de</strong> Programasen CompetenciasProfesionales por los<strong>Instituto</strong>s Tecnológicos<strong>de</strong>l 1 <strong>de</strong> septiembre al 15<strong>de</strong> diciembre.Reunión Nacional <strong>de</strong>Consolidación <strong>de</strong>lDiseño e InnovaciónCurricular para laFormación y Desarrollo<strong>de</strong> CompetenciasProfesionales <strong>de</strong>l 25 al29 <strong>de</strong> enero <strong>de</strong>l 2010 enel <strong>Instituto</strong> Tecnológico<strong>de</strong> Mexicali.<strong>Aguascalientes</strong>, Apizaco,Cajeme, Celaya, Chapala,Chihuahua, Ciudad Guzmán,Ciudad Juárez, Cosamaloapan,Cuautla, Culiacan, Durango,Ecatepec, Ensenada, Hermosillo,Irapuato, La Laguna, LázaroCár<strong>de</strong>nas, Lerdo, Lerma, LosMochis, Matamoros, Mérida,Mexicali, Minatitlán, NuevoLaredo, Orizaba, Piedras Negras,Reynosa, Salina Cruz, Saltillo,Sur De Guanajuato, Tantoyuca,Tijuana, Toluca, Tuxtepec,Veracruz y XalapaAca<strong>de</strong>mias <strong>de</strong> IngenieríaElectrónica <strong>de</strong> los <strong>Instituto</strong>sTecnológicos <strong>de</strong>:Aquí va los tecRepresentantes <strong>de</strong> los <strong>Instituto</strong>sTecnológicos <strong>de</strong>:<strong>Aguascalientes</strong>, Apizaco,Cajeme, Celaya, Chapala,Chihuahua, Ciudad Guzmán,Ciudad Juárez, Cosamaloapan,Cuautla, Durango, Ecatepec,Ensenada, Hermosillo, Irapuato,La Laguna, Lázaro Cár<strong>de</strong>nas,Lerdo, Lerma, Los Mochis,Matamoros, Mérida, Mexicali,Minatitlán, Nuevo Laredo,Orizaba, Piedras Negras,Reynosa, Salina Cruz, Saltillo,Sur De Guanajuato, Tantoyuca,Toluca, Tuxtepec, Veracruz yXalapaEventoReunión Nacional <strong>de</strong>Diseño e InnovaciónCurricular para elDesarrollo y Formación <strong>de</strong>CompetenciasProfesionales <strong>de</strong> laCarrera <strong>de</strong> Ingeniería enElectrónica.Elaboración <strong>de</strong>l programa<strong>de</strong> Estudio propuesto en laReunión Nacional <strong>de</strong>Diseño Curricular <strong>de</strong> laCarrera <strong>de</strong> IngenieríaElectrónica.Reunión Nacional <strong>de</strong>Consolidación <strong>de</strong> losProgramasenCompetenciasProfesionales <strong>de</strong> laCarrera <strong>de</strong> IngenieríaElectrónica


5.- OBJETIVO GENERAL DEL CURSODiseñar algoritmos y <strong>de</strong>sarrollar programas <strong>de</strong> aplicación, utilizando un lenguaje <strong>de</strong>programación estructurado <strong>de</strong> alto nivel, para su aplicación en la solución <strong>de</strong>problemas propios <strong>de</strong>l área.6.- COMPETENCIAS PREVIASEl estudiante:• Busca y analiza información <strong>de</strong> diferentes fuentes.• Analiza problemas• Usa la computadora personal7.- TEMARIOUnidad Temas Subtemas1 Fundamentos <strong>de</strong>programación2 Elementos <strong>de</strong>l lenguaje<strong>de</strong> programación3 Programación modular1.1. Importancia <strong>de</strong> la programación <strong>de</strong>computadoras1.2. Clasificación <strong>de</strong> los lenguajes <strong>de</strong>programación1.3. Diseño <strong>de</strong> algoritmos2.1. Introducción al entorno <strong>de</strong>programación2.2. Estructura básica <strong>de</strong> un programa2.3. Palabras reservadas2.4. Variables y constantes2.5. Tipos <strong>de</strong> datos2.5.1. Simples2.5.2. Compuestos (abstractos)2.6. Despliegue y formateo <strong>de</strong> datos2.7. Operadores aritméticos, lógicos yrelacionales2.8. Control <strong>de</strong> flujo2.9. Ciclos3.1. Declaración <strong>de</strong> funciones3.1.1. Simples3.1.2. Con parámetros3.2. Uso <strong>de</strong> bibliotecas <strong>de</strong> funciones3.2.1. Entrada y salida3.2.2. Archivos3.2.3. Ca<strong>de</strong>nas


4 Aplicación <strong>de</strong> puertos <strong>de</strong>comunicación4.1. Puertos <strong>de</strong> comunicación4.2. Especificaciones <strong>de</strong> los puertos RS-232 y Paralelo.4.3. Envío y recepción <strong>de</strong> datos


variables, constantes y los diferentestipos <strong>de</strong> datos• Desarrollar programas que utilicen losoperadores aritméticos, lógicos yrelacionales• Desarrollar programas que utilicencontrol <strong>de</strong> flujo y ciclosUnidad 3: Programación modularCompetencia específica a <strong>de</strong>sarrollarUtilizar la metodología <strong>de</strong> laprogramación modular para<strong>de</strong>sarrollarprogramasestructurados y simplificar elmantenimiento <strong>de</strong>l código.Activida<strong>de</strong>s <strong>de</strong> Aprendizaje• Investigar los elementos queconforman una función (entregarreporte).• Retomar los programas previamenteelaborados, bajo la metodología <strong>de</strong>programación modular• Desarrollar programas que utilicenbibliotecas <strong>de</strong> funciones <strong>de</strong> entrada ysalida, <strong>de</strong> manejo <strong>de</strong> archivos ymanipulación <strong>de</strong> ca<strong>de</strong>nasUnidad 4: Aplicación <strong>de</strong> puertos <strong>de</strong> comunicaciónCompetencia específica a <strong>de</strong>sarrollarDesarrollar programas queincluyan manejo <strong>de</strong> puertos parapermitir la interacción consistemas electrónicos externos a lacomputadora.Activida<strong>de</strong>s <strong>de</strong> Aprendizaje• Investigar y exponer frente a grupoaplicaciones don<strong>de</strong> se requiere lainteracción entre la computadora ysistemas electrónicos externos.• Investigar y exponer frente a grupo laspropieda<strong>de</strong>s <strong>de</strong> diferentes interfaces <strong>de</strong>comunicación (RS-232, Paralelo)• Desarrollar programas que permitaninteractuar con sistemas electrónicosexternos a la computadora (motores,leds, actuadores, sensores, etc.).


11.- FUENTES DE INFORMACIÓN1 Björnan<strong>de</strong>r, Stefan; Microsoft Visual C++ Windows Applications by Example:Co<strong>de</strong> and explanation for real-world MFC C++ Applications; PacketPublishing; 2008;2 Horton, Ivor; Ivor Horton's Beginning Visual C++ 2008; Wrox; 2008;3 Deitel, Paul J.; Visual C# 2008 How to Program; Prentice Hall; 3 rd Edition;20084 Kernighan, Brian W.; El lenguaje <strong>de</strong> programación C (2ª Ed); Ed. Prentice Hall;19985 Stephen G. Kochan; Programming in C; 3 rd ; SAMS; 20046 Kernighan, Brian W.; The Practice of Programming; Ed. Addison-Wesley;19997 Deitel, Harvey M.; and Deitel ,Paul J.; Java How to Program 7th Edition;Prentice Hall; 200712.- PRÁCTICAS PROPUESTAS• Manejo <strong>de</strong>l entorno <strong>de</strong> programación• Desarrollar un programa que comprenda la estructura básica <strong>de</strong>l lenguaje.• Desarrollar un programa que muestre el valor almacenado en una constante yen variables <strong>de</strong> los tipos <strong>de</strong> datos básicos• Desarrollar un programa que haga uso <strong>de</strong> tipos <strong>de</strong> datos abstractos• Desarrollar un programa que calcule el área, perímetro y diámetro <strong>de</strong> uncírculo a partir <strong>de</strong> la <strong>de</strong>claración <strong>de</strong> una constante (pi) y la asignación <strong>de</strong> valor<strong>de</strong>l radio. Realizarlo con diferentes valores• Repetir la práctica anterior solicitando el ingreso <strong>de</strong> los valores <strong>de</strong>l radio pormedio <strong>de</strong>l teclado.• Desarrollar un programa que realice la conversión entre sistemas numéricos• Desarrollar un programa que a partir <strong>de</strong>l ingreso <strong>de</strong> valores binarios <strong>de</strong> 8 bits,realice las operaciones lógicas (and, or, xor, xnor)• Desarrollar un programa que utilice una función que calcule el factorial <strong>de</strong> unnumero• Desarrollar un programa que a partir <strong>de</strong> un rango <strong>de</strong> años obtenga los que sonbisiesto• Desarrollar un programa que genere números aleatorios y se almacenen enun archivo• Desarrollar un programa que genere números <strong>de</strong> la serie <strong>de</strong> fibbonacci y sealmacenen en un archivo• Desarrollar un programa que muestre un menú para la realización <strong>de</strong>operaciones con matrices• Desarrollar un programa que realice una animación <strong>de</strong> led´s mediante elpuerto paralelo• Desarrollar un programa que muestre en pantalla el estado <strong>de</strong> <strong>de</strong> un arreglo<strong>de</strong> interruptores conectados al puerto paralelo

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!