120 aÑos de trabajo y rectitud 12/05/2015 1 - 1 fundamentos de programaciÓn escuela de sistemas

38
120 120 AÑOS DE AÑOS DE TRABAJO Y TRABAJO Y RECTITUD RECTITUD 06/28/22 06/28/22 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas Escuela de Sistemas

Upload: eugenia-benitez-aguilera

Post on 02-Feb-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

120 120 AÑOS AÑOS DE TRABAJO DE TRABAJO Y RECTITUDY RECTITUD

04/22/2304/22/23 1 - 1

FUNDAMENTOS DE PROGRAMACIÓNFUNDAMENTOS DE PROGRAMACIÓN

Escuela de SistemasEscuela de Sistemas

Page 2: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 204/22/23

Introducción

Semestre 02-2008Semestre 02-2008

Importancia de la computaciónImportancia de la computación

Presentación del CursoPresentación del Curso

Conceptos Básicos de ProgramaciónConceptos Básicos de Programación

Metodología de Trabajo. Métodos eficientes de Estudio.Metodología de Trabajo. Métodos eficientes de Estudio.

Estructuras automáticas básicasEstructuras automáticas básicas

Page 3: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 304/22/23

Importancia de la computaciónImportancia de la computación

• Los computadores y las redes de computadores se Los computadores y las redes de computadores se han convertido en la herramienta imprescindible han convertido en la herramienta imprescindible en toda área técnica y de ingeniería.en toda área técnica y de ingeniería.

• Todo técnico y profesional debe manejar y Todo técnico y profesional debe manejar y aplicar eficientemente dicha herramienta, en aplicar eficientemente dicha herramienta, en sus áreas propias de profesión.sus áreas propias de profesión.

Page 4: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 404/22/23

Necesidad de la computación para los ingenierosNecesidad de la computación para los ingenieros

• Las necesidades y exigencias de las empresas, de los negocios, de las sociedades actuales, requieren que los ingenieros sean más eficienteslos ingenieros sean más eficientes en sus labores.

• Las herramientas computaciones, computadores, entornos y lenguajes, permiten lograr mayores niveles de eficiencia en el eficiencia en el desarrollo técnico personaldesarrollo técnico personal.

Page 5: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 504/22/23

Objetivos del cursoObjetivos del curso

Desarrollar capacidades lógico - Desarrollar capacidades lógico - abstractas para el análisis, abstractas para el análisis, implementación y solución de problemas, implementación y solución de problemas, mediante un enfoque algorítmico.mediante un enfoque algorítmico.

Incentivar el aprendizaje de un lenguaje Incentivar el aprendizaje de un lenguaje de programación con entorno gráfico, de programación con entorno gráfico, visual e interactivo:visual e interactivo:

Excel - Visual Basic for Applications (VBA).Excel - Visual Basic for Applications (VBA).

Page 6: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 604/22/23

Contenido - Primera ParteContenido - Primera Parte (4/5 semanas)(4/5 semanas)

Introducción al curso.Introducción al curso. Entorno de programación.Entorno de programación. Estructuras básicas para representación de Estructuras básicas para representación de

algoritmos: secuencia, selección lógica.algoritmos: secuencia, selección lógica. El concepto de PROYECTO en VBA y sus El concepto de PROYECTO en VBA y sus

componentes. Selección lógica.componentes. Selección lógica. Iteración definida, acumulador/contador; Iteración definida, acumulador/contador;

Técnicas de integración numérica. Técnicas de integración numérica. Primera evaluación teórica (25%).Primera evaluación teórica (25%).

Page 7: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 704/22/23

Contenido - Segunda ParteContenido - Segunda Parte (5/6 semanas)(5/6 semanas)

VectoresVectores Iteración indefinidaIteración indefinida Búsqueda y ordenamientoBúsqueda y ordenamiento AplicacionesAplicaciones Segunda evaluación teórica (25%)Segunda evaluación teórica (25%) Primera evaluación práctica (12.5%)Primera evaluación práctica (12.5%)

Page 8: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 804/22/23

Contenido - Tercera ParteContenido - Tercera Parte (4/5 semanas)(4/5 semanas)

MatricesMatrices Funciones y subprogramasFunciones y subprogramas Variables locales y globalesVariables locales y globales AplicacionesAplicaciones Tercera evaluación teórica (25%)Tercera evaluación teórica (25%) Segunda evaluación práctica (12.5%)Segunda evaluación práctica (12.5%)

Page 9: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 904/22/23

Evaluación – Semestre 01/2009Evaluación – Semestre 01/2009

3 Exámenes escritos (3 Exámenes escritos (75%)75%):: Primer parcial (25%), Lunes 30 de Primer parcial (25%), Lunes 30 de

Marzo/2009 4 .p.m.Marzo/2009 4 .p.m. Segundo parcial (25%), Lunes 11 de Segundo parcial (25%), Lunes 11 de

Mayo/2009, 4 p.m.Mayo/2009, 4 p.m. Tercer parcial (25%), Lunes 8 Junio/2009, 4 Tercer parcial (25%), Lunes 8 Junio/2009, 4

p.m.p.m. 2 Exámenes prácticos (2 Exámenes prácticos (25%)25%):: hora práctica hora práctica

Semana Abril-20/24 (12.5%) Semana Abril-20/24 (12.5%) Semana Junio-8/12 (12.5%)Semana Junio-8/12 (12.5%)

Page 10: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1004/22/23

PROGRAMA CALENDARIO - SEM.01-2007PROGRAMA CALENDARIO - SEM.01-2007

METODOLOGÍAMETODOLOGÍA• Aprendizaje activoAprendizaje activo• Aprendizaje vía ejemplos.Aprendizaje vía ejemplos.• (Empoderamiento cognitivo)(Empoderamiento cognitivo)

Page 11: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1104/22/23

Exposiciones magistrales (auditorio,12-202).Exposiciones magistrales (auditorio,12-202). Uso del computador / Software (PC’s, 41-214), o Uso del computador / Software (PC’s, 41-214), o en Minas Bloque M7, 5º piso.en Minas Bloque M7, 5º piso. Talleres // Asesorías // Tareas extraclase. Aprendizaje “vía ejemplos”; “aprendizaje activo”. “Construccionismo CognitivoConstruccionismo Cognitivo”.

Requisitos: Matemáticas básicas; Métodos Métodos eficientes de estudioeficientes de estudio.

MetodologíaMetodología

Page 12: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1204/22/23

BIBLIOGRAFÍA Y REFERENCIASBIBLIOGRAFÍA Y REFERENCIAS

BrassardBrassard, G. y Bratley, P.: «Fundamentos de ALGORITMIA», Prentice Hall International, Madrid (España), 1997.

OviedoOviedo, Efraím: “Lógica para programación”, ECOE ediciones, Agosto 2004. (para la primera parte del curso), Caps.: 1, 2, 3, 4, 5, 6, 7, 8.

LopezLopez, Leobardo: “Programación Estructurada, un enfoque algorítmico”, AlfaOmega, 2002

Chapra, Steven C. & Canale, Raymond P.: «Numerical Methods Chapra, Steven C. & Canale, Raymond P.: «Numerical Methods for Engineers», McGraw-Hill, 2002, Caps.: 1, 2, 5, 6, 8, 9, 12, 17, 20, for Engineers», McGraw-Hill, 2002, Caps.: 1, 2, 5, 6, 8, 9, 12, 17, 20, 21, 22, 24.21, 22, 24.

Walkenbach, J.: «Microsoft Office Excel 2007 VBA Programming for DUMMIES», Wyley Publishing, Inc., 2007. (puede leerse online en http://www.docstoc.com/docs/document-preview.aspx?doc_id=1659168) capítulos: 3, 7, 10, 14, 15, 16, 17, 22.

Page 13: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1304/22/23

http://virtual2.unalmed.edu.co/moodle

Facultad de minas – Fundamentos de programación

Clases prácticas y teóricasClases prácticas y teóricas

Ejemplos interactivosEjemplos interactivos

ProblematecaProblemateca

Talleres onlineTalleres online

Documentos, manuales y enlaces de interésDocumentos, manuales y enlaces de interés

Alvarez-Montoya, William: «Alvarez-Montoya, William: «Algoritmos & Programación con VBA» Algoritmos & Programación con VBA»

Alvarez-Montoya, WilliamAlvarez-Montoya, William: «Aplicaciones en Métodos Numéricos »: «Aplicaciones en Métodos Numéricos »

Técnicas de estudioTécnicas de estudio

PÁGINA WEB DEL CURSOPÁGINA WEB DEL CURSO

Page 14: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1404/22/23

DIDÁCTICA DE ACTIVIDADES DIDÁCTICA DE ACTIVIDADES SEMANALESSEMANALES

ALGORITMOS &

PROGRAMACIÓN

MétodosMétodoseficientes eficientes de estudiode estudio

ObjetivoObjetivoss

AprendizajeAprendizaje

ACTITUDES• Proyecto de Vida

• Actitud PROACTIVA

• Asistir a clases• Saber fijar atención• Tomar apuntes• Estudio extraclase• Lectura rápida• Mejorar memoria• Nutrición eficiente

Page 15: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1504/22/23

DIDÁCTICA DE ACTIVIDADES DIDÁCTICA DE ACTIVIDADES SEMANALESSEMANALES

CLASE TEÓRICACLASE TEÓRICA

Centrar atenciónCentrar atenciónTomar apuntesTomar apuntes

Estudiar contenidosEstudiar contenidos

CLASE PRÁCTICACLASE PRÁCTICA

Estudiar talleres,Estudiar talleres,realizar proyectorealizar proyecto

RealimentaciRealimentaciónón

DuranteDurante la clase TEÓRICA: la clase TEÓRICA:• Saber fijar la atención.Saber fijar la atención.• Toma creativa de apuntesToma creativa de apuntes• Formular preguntas.Formular preguntas.• Utilizar memoria asociativaUtilizar memoria asociativa• ¿Qué tareas se plantean?.¿Qué tareas se plantean?.

Después de la clase TEÓRICA:• Estudiar más detallada y profundamente los contenidos, ojalá el mismo día.• No dejar acumular contenidos.• Resolver las preguntas que surgieron.• Realizar las tareas, ejercicios, proyectos, talleres.• Asistir a un taller adicional.

DuranteDurante la clase PRÁCTICAPRÁCTICA:• Centrarse en la elaboración del proyecto respectivo.• Saber conceptualizar y diferenciar las etapas de elaboración del proyecto.• Saber grabar el proyecto..• ¿Qué tareas se plantean?.

Después de la clase PRÁCTICA:• Estudio del proyecto; etapas de elaboración (ojalá el mismo día)• Repasar proyecto(s) en página web.• Realizar otro proyecto en computador• Asistir a un taller adicional.• ¿Qué preguntas puede plantearse?.

Sobre técnicas básicas de Sobre técnicas básicas de estudio ver el documento: estudio ver el documento: «CÓMO ESTUDIAR Y «CÓMO ESTUDIAR Y APRENDER UNA DISCIPLINA», APRENDER UNA DISCIPLINA», por por Richard Paul y Linda Elder, de la Fundación para El Pensamiento Crítico, 2003, www.criticalthinking.org, que también está en la página web de la documentación:

http://www.unalmed.edu.co/~walvarem

Después de la clase TEÓRICA:• Estudiar más detallada y profundamente los contenidos, ojalá el mismo día.• No dejar acumular contenidos.• Resolver las preguntas que surgieron.• Realizar las tareas, ejercicios, proyectos, talleres.• Asistir a un taller adicional.

Page 16: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1604/22/23

El ábaco, El ábaco, antigüedadantigüedad.

Calculadoras Calculadoras mecánicas.mecánicas.

Electromecánicos. Electromecánicos. Electrónicos. Electrónicos. SupercomputadoresSupercomputadores

. . El PC, redes de PC,El PC, redes de PC,

Internet, 1980-Internet, 1980-

Evolución del Evolución del computadorcomputador

(Cap. 1)(Cap. 1)• Culturas de China, Mesopotamia.. Desde Culturas de China, Mesopotamia.. Desde 5000 años A.C.5000 años A.C.• Operaciones simples de Aritmética.Operaciones simples de Aritmética.• Primer artefacto de cómputoPrimer artefacto de cómputo • Atribuídas a Blas Pascal y Atribuídas a Blas Pascal y

Godofredo Leibnitz. Siglo XVI.Godofredo Leibnitz. Siglo XVI.• Pascal: primera sumadora mecánica.Pascal: primera sumadora mecánica.• Leibnitz: incluye multiplicaciónLeibnitz: incluye multiplicación

• Desde finales del siglo XIX.Desde finales del siglo XIX.• 1890: Censo en Estados Unidos y Europa.1890: Censo en Estados Unidos y Europa.• Inicios S.XX: proceso de datos en empresas.Inicios S.XX: proceso de datos en empresas. • Siglo XX, desde 1940’s.Siglo XX, desde 1940’s.

• 1940’s: primera computadora electromecánica.1940’s: primera computadora electromecánica.• 1950’s: proceso de datos en empresas; transistor.1950’s: proceso de datos en empresas; transistor. • Siglo XX, desde 1960’s.Siglo XX, desde 1960’s.

• Grandes empresas, países más Grandes empresas, países más indudtrializados.indudtrializados.• Investigación; industria aeroespacial.Investigación; industria aeroespacial. • Oct. 1981: “Revolución de los PC’s.Oct. 1981: “Revolución de los PC’s.

• Microelectrónica. Computadores personales.Microelectrónica. Computadores personales.• Red mundial. Tecnologías de programación.Red mundial. Tecnologías de programación.• Internet 2 (desde año 2000)... Nanotrónica...Internet 2 (desde año 2000)... Nanotrónica...

Page 17: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1704/22/23

EVOLUCIÓN EVOLUCIÓN HARDWARE/SOFTWAREHARDWARE/SOFTWARE

Microelectrónica,Programación

o 2

008

o 2

008

Page 18: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1804/22/23

Arquitectura de computadores - Arquitectura de computadores - internainterna

Page 19: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 1904/22/23

Arquitectura de computadores - Arquitectura de computadores - externaexterna

Page 20: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2004/22/23

Para que el Para que el computador?computador?

Resolver Problemas Técnicos y de IngenieríaResolver Problemas Técnicos y de Ingeniería::

Cálculos Cálculos RepetitivosRepetitivos.

Grandes Grandes volúmenes volúmenes

de informaciónde información..Complejidad Complejidad

cálculoscálculos. . Velocidad de Velocidad de

procesoproceso

y de respuestay de respuesta. . PrecisiónPrecisión..

• En el diseño y cálculo de la estructura de un En el diseño y cálculo de la estructura de un edificio, por ejemplo, se tardaría meses hacer las edificio, por ejemplo, se tardaría meses hacer las operaciones matemáticas manualmente.operaciones matemáticas manualmente.• El computador, mediante los programas El computador, mediante los programas respectivos, realiza tales procesos en pocos minutos.respectivos, realiza tales procesos en pocos minutos.

• En las empresas, los procesos de inventarios, por En las empresas, los procesos de inventarios, por ejemplo, con decenas de miles de artículos.ejemplo, con decenas de miles de artículos.• Igualmente, los procesos de nómina, contables, Igualmente, los procesos de nómina, contables, financieros, de facturación, de proveedores, etc.financieros, de facturación, de proveedores, etc.• En el Estado los impuestos, datos de población, En el Estado los impuestos, datos de población, etc.etc. • El software, a través de los computadores, puede El software, a través de los computadores, puede

manejar procesos complejos de tipo lógico y manejar procesos complejos de tipo lógico y matemático.matemático.• Las transacciones basadas en redes de Las transacciones basadas en redes de computadores (locales, regionales, nacionales, computadores (locales, regionales, nacionales, internacionales).internacionales).• Inteligencia Artificial, Sistemas Expertos, etc.Inteligencia Artificial, Sistemas Expertos, etc.

• A todo nivel organizacional se requieren A todo nivel organizacional se requieren respuestas a tiempo real.respuestas a tiempo real.• Telecomunicaciones.Telecomunicaciones.• Control de procesos de fabricación, y de Control de procesos de fabricación, y de prestación de servicios, etc.prestación de servicios, etc.

• Las máquinas (los computadores), en general, Las máquinas (los computadores), en general, suelen ser más precisas que las personas.suelen ser más precisas que las personas.• Esta capacidad de las máquinas es especialmente Esta capacidad de las máquinas es especialmente útil en los cálculos de Ingeniería.útil en los cálculos de Ingeniería.• Igualmente, en las labores científicas, financieras, Igualmente, en las labores científicas, financieras, etc.etc.

Page 21: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2104/22/23

EL ENFOQUE EL ENFOQUE ALGORÍTMICOALGORÍTMICO

Permite Permite resolver problemas resolver problemas complejoscomplejos..

SoftwareSoftware. . HardwareHardware. . ProyectosProyectos. . Facilita Facilita

resolver problemas resolver problemas de cálculosde cálculos.

• Potenciando, así, el enfoque meramente Potenciando, así, el enfoque meramente ecuacional.ecuacional.• La Aritmética, el Álgebra y demás áreas La Aritmética, el Álgebra y demás áreas matemáticas se aunan en los algoritmos matemáticas se aunan en los algoritmos implementados en software.implementados en software.

• Que sin ayuda de los computadores no Que sin ayuda de los computadores no se podrían resolver en términos prácticos se podrían resolver en términos prácticos de tiempo, costo, y demás recursos.de tiempo, costo, y demás recursos.• Es una de las bases actuales en el Es una de las bases actuales en el desarrollo de las ciencias, las tecnologías, desarrollo de las ciencias, las tecnologías, el conocimiento.el conocimiento.• Facilita obtener mejores soluciones a Facilita obtener mejores soluciones a problemas más complejos.problemas más complejos.

• El software es el conjunto de programas que permiten y El software es el conjunto de programas que permiten y facilitan la utilización de un computador. Se le denomina, facilitan la utilización de un computador. Se le denomina, también, la parte lógica de la máquina.también, la parte lógica de la máquina.• Categorías de software: Sistema Operativo, Entornos de Categorías de software: Sistema Operativo, Entornos de programación, Automatización de oficina, redes, etc..programación, Automatización de oficina, redes, etc..

• Comprende la parte electrónica, electromecánica y Comprende la parte electrónica, electromecánica y mecánica de los computadores. mecánica de los computadores. • También puede incluir programación.También puede incluir programación.• Microelectrónica. Chips. Memorias RAM, ROM.Microelectrónica. Chips. Memorias RAM, ROM.

• Un PROYECTO incluye deversidad de recursos Un PROYECTO incluye deversidad de recursos que se aplican en el tiempo para obtener unos que se aplican en el tiempo para obtener unos fines.fines.• En el ámbito de la asignatura, se trabajarán En el ámbito de la asignatura, se trabajarán proyectos con el software Visual Basic.proyectos con el software Visual Basic.

Page 22: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2204/22/23

EL CONCEPTO DE EL CONCEPTO DE ALGORITMOALGORITMO

•Elaborar Elaborar algoritmoalgoritmoss

•¿Qué es un ¿Qué es un algoritmo?algoritmo?•¿Por qué es útil?¿Por qué es útil?

•¿Cómo se ¿Cómo se aplica?aplica?•Algoritmos y Algoritmos y ProgramasProgramas

• SECUENCIASECUENCIA de procesos (tareas, de procesos (tareas, operaciones) ordenada lógicamente que operaciones) ordenada lógicamente que permite obtener ciertos resultados a partir de permite obtener ciertos resultados a partir de ciertos datos.ciertos datos.• LOS ALGORITMOS estudiados en este LOS ALGORITMOS estudiados en este curso son los SECUENCIALES.curso son los SECUENCIALES.

• Permite el análisis lógico-conceptual de un Permite el análisis lógico-conceptual de un problema y anticipar las posibles soluciones.problema y anticipar las posibles soluciones.• En cierto sentido permite En cierto sentido permite MODELARMODELAR la realidad, la realidad, con el fín de poder modificarla, o adaptarla a con el fín de poder modificarla, o adaptarla a determinadas necesidades.determinadas necesidades.

• Cuando un algoritmo se expresa mediante la Cuando un algoritmo se expresa mediante la sintaxis de un lenguaje de programación de sintaxis de un lenguaje de programación de computadores se llama, entonces, un computadores se llama, entonces, un PROGRAMA. PROGRAMA. • Un conjunto de programas constituye un Un conjunto de programas constituye un SOFTWARESOFTWARE..

• Tiene tanto de Tiene tanto de artearte como de como de cienciaciencia..• Existe una teoría en crecimiento y todo un bagaje de Existe una teoría en crecimiento y todo un bagaje de experiencias.experiencias.• Hacer un buen algoritmo exige abstracción, lógica, Hacer un buen algoritmo exige abstracción, lógica, imaginación, creatividad, dominio de las técnicas de imaginación, creatividad, dominio de las técnicas de programación, y dominio del área del problema que se programación, y dominio del área del problema que se intenta resolver.intenta resolver.

• Expresando la secuencia lógica de operaciones que Expresando la secuencia lógica de operaciones que llevan a la solución de un problema.llevan a la solución de un problema.• Considerando todas las posibilidades lógicas del Considerando todas las posibilidades lógicas del problema en custión.problema en custión.• Considerando las relaciones y restricciones Considerando las relaciones y restricciones pertinentes al problema.pertinentes al problema.

Page 23: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2304/22/23

CONSTRUCCIÓN DE ALGORITMOSCONSTRUCCIÓN DE ALGORITMOS

3. Iteración3. Iteración

•Estructuras básicasEstructuras básicas

•¿Cuáles son?¿Cuáles son?

1. Secuencia1. Secuencia

2. Selección 2. Selección lógicalógica

• Un algoritmo se elabora Un algoritmo se elabora ((construyeconstruye) mediante ciertos ) mediante ciertos componentes básicos llamados componentes básicos llamados ESTRUCTURASESTRUCTURAS..• Desde la década de 1960’s se vió Desde la década de 1960’s se vió que este enfoque, aunque sencillo, que este enfoque, aunque sencillo, es muy útil para representar es muy útil para representar secuencias de procesos (tareas, secuencias de procesos (tareas, actividades, operaciones).actividades, operaciones).

• PERMITE ELEGIR UNA DE DOS O MÁS VÍAS PERMITE ELEGIR UNA DE DOS O MÁS VÍAS DE ACCIÓN (ALTERNATIVAS). DE ACCIÓN (ALTERNATIVAS). • En un problema especifíco, el conjunto de En un problema especifíco, el conjunto de ALTERNATIVAS puede ser muy extenso.ALTERNATIVAS puede ser muy extenso.• ES LA REPETICIÓN DE UNA O MÁS ES LA REPETICIÓN DE UNA O MÁS

OPERACIONES.OPERACIONES.• De antemano, puede conocerse o no cuántas De antemano, puede conocerse o no cuántas veces se repetirán las operaciones.veces se repetirán las operaciones.• El conjunto de operaciones que se repite se llama El conjunto de operaciones que se repite se llama RANGO DE ITERACIÓN.RANGO DE ITERACIÓN.

• TODO ALGORITMO ES UNA TODO ALGORITMO ES UNA SECUENCIA SECUENCIA LÓGICALÓGICA DE CIERTAS OPERACIONES (ó DE CIERTAS OPERACIONES (ó procesos, o tareas, o eventos).procesos, o tareas, o eventos).• En la solución de un problema existe una secuencia general, y dentro de ella muchas otras secuencias más detalladas.

Page 24: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2404/22/23

CONSTRUCCIÓN DE CONSTRUCCIÓN DE ALGORITMOSALGORITMOS

Esquema GENÉRICO de un Esquema GENÉRICO de un ALGORITMO ALGORITMO SECUENCIALSECUENCIAL

ENTRADAPROCESAMIENTOPROCESAMIENTO

• Cálculos• Relaciones lógicas

SALIDASALIDA

Datos capturados

Muestran,Graban,

Imprimen,transmiten

Variables, Variables, constantesconstantes

((DATOSDATOS)) Variables, Variables, constantesconstantes(RESULTADOS)(RESULTADOS)

Realimentación

Realimentación

Page 25: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2504/22/23

CONSTRUCCIÓN DE ALGORITMOSCONSTRUCCIÓN DE ALGORITMOS

EJEMPLOEJEMPLODiseñar un algoritmo para calcular el área de un Diseñar un algoritmo para calcular el área de un triángulotriángulo

AnálisisAnálisis::Cuales son los datos de entrada?Cuales son los datos de salida?Que cálculos/procesos deben llevarse a cabo?

Page 26: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2604/22/23

CONSTRUCCIÓN DE ALGORITMOSCONSTRUCCIÓN DE ALGORITMOS

DATOS DE DATOS DE ENTRADAENTRADA

Base, AlturaBase, Altura

PROCESAMIENTO Área = Base*Altura

DATOS DE DATOS DE SALIDASALIDA

ÁreaÁrea

Page 27: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2704/22/23

REPRESENTACIÓN DE REPRESENTACIÓN DE ALGORITMOSALGORITMOS

PseudocódigoPseudocódigo

INICIOINICIOLeer Base, AlturaLeer Base, AlturaArea = Base*AlturaArea = Base*AlturaMostrar AreaMostrar Area

FINFIN

Diagrama de cajaDiagrama de caja

INICIOINICIO

Leer Base, AlturaLeer Base, Altura

Area = (Base*Altura)/2Area = (Base*Altura)/2

Mostrar AreaMostrar Area

FINFIN

Page 28: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2804/22/23

CONSTRUCCIÓN DE ALGORITMOSCONSTRUCCIÓN DE ALGORITMOS

EJEMPLO 2EJEMPLO 2Diseñar un algoritmo para calcular el perímetro de un Diseñar un algoritmo para calcular el perímetro de un círculocírculo

AnálisisAnálisis::Cuales son los datos de entrada?π es dato de entrada?Cuales son los datos de salida?Que cálculos/procesos deben llevarse a cabo?

INICIOINICIO

Leer RadioLeer Radio

Prm = 2*Pi*RadioPrm = 2*Pi*Radio

Mostrar PrmMostrar Prm

FINFIN

Page 29: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 2904/22/23

CONSTRUCCIÓN DE ALGORITMOSCONSTRUCCIÓN DE ALGORITMOS

EJEMPLO 3EJEMPLO 3Suponga que se necesita un algoritmo para realizar la factura en un almacén que vende televisores al por mayor (suponiendo que de un solo tipo). La factura debe mostrar el valor total a pagar y el valor de los impuestos. El costo por unidad de los televisores es de $700.000 y el impuesto aplicado es del 16%.

AnálisisAnálisis??

INICIOLeer numero_unidadesImpuestos = numero_unidades* $700.000 * 0.16Total = numero_unidades* $700.000 + ImpuestosMostrar Total, Impuestos

FIN

Page 30: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 3004/22/23

Algoritmo, Lenguaje y Algoritmo, Lenguaje y ProgramaPrograma

Los términos “algoritmo” y “programa” tienden a confundirse y en algunos casos a utilizarse indiferentemente. Recordemos que el término “algoritmo” se refiere a la secuencia de pasos para resolver un problema, pero independiente del lenguaje de programación que se utilice, mientras que “programa” se refiere propiamente a la codificación de un algoritmo en algún lenguaje de programación.

Page 31: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 3104/22/23

Lenguajes y entornos de Lenguajes y entornos de programaciónprogramación

• Basic / Visual BasicBasic / Visual Basic

• C / C++C / C++

• JavaJava

• PascalPascal

• Fortran / Visual FortranFortran / Visual Fortran

• … …

Page 32: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 3204/22/23

METODOLOGÍA GENERAL DE METODOLOGÍA GENERAL DE TRABAJOTRABAJO

1. Análisis del 1. Análisis del problemaproblema

2. Diseño de una 2. Diseño de una estrategia de estrategia de soluciónsolución3. Programa 3. Programa (proyecto), usando (proyecto), usando un lenguaja de un lenguaja de programaciónprogramación

• Elaborando la interfaz Elaborando la interfaz gráfica del usuario gráfica del usuario (formulario y demás objetos)(formulario y demás objetos)..• Escribiendo los Escribiendo los procedimientos pertinentesprocedimientos pertinentes..• Realizando la ejecución, Realizando la ejecución, depuración y correcciones del depuración y correcciones del mismo.mismo.

• Identificación y entendimiento del Identificación y entendimiento del problemaproblema..• Identificación de variables y constantes Identificación de variables y constantes (la estructura de datos de ENTRADA y (la estructura de datos de ENTRADA y SALIDA)SALIDA)..• Restricciones y relaciones matemáticas Restricciones y relaciones matemáticas entre variables y constantes (fórmulas).entre variables y constantes (fórmulas).

• Representando la secuencia de pasos Representando la secuencia de pasos (operaciones, o procesos), llamada (operaciones, o procesos), llamada algoritmo, mediante una herramienta algoritmo, mediante una herramienta apropiadaapropiada..• Puede ser con una forma diagramática Puede ser con una forma diagramática (diagrama libre, diagrama (diagrama libre, diagrama estructurado)estructurado)..• Puede ser con Pseudocódigo (P-código), Puede ser con Pseudocódigo (P-código), o lenguaje natural estructurado.o lenguaje natural estructurado.

Page 33: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas

Page 34: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas

Page 35: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas

Page 36: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 3604/22/23

TAREAS EXTRACLASE TAREAS EXTRACLASE

1. Ingresar a la página del curso y resolver el primer cuestionario

2. Leer Capitulo 2, sección 2.1

3. Elaborar algoritmos (en pseudocódigo o diagrama de caja) para los siguientes problemas de la problemateca: 1 - 6

4. Efectuar una lectura previa de la sección 3.1, que presenta el entorno de programación Visual Basic

5. Efectuar una lectura previa de la siguiente clase

Page 37: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

UNIVERSIDADNACIONALDE COLOMBIA

SEDE MEDELLÍN Facultad de Nacional de Minas - Escuela de Sistemas1 - 3704/22/23

¡¡¡¡ ATENCIÓN !!!!¡¡¡¡ ATENCIÓN !!!!

LAS CLASES PRÁCTICAS SE REALIZAN EN LAS CLASES PRÁCTICAS SE REALIZAN EN EL AULA 41-214EL AULA 41-214

(¡Próxima semana!)(¡Próxima semana!)

Se recomienda llevar memoria USB para grabar Se recomienda llevar memoria USB para grabar los trabajos o emplear el servicio de ftp que está los trabajos o emplear el servicio de ftp que está

disponible para todos los estudiantesdisponible para todos los estudiantes

Page 38: 120 AÑOS DE TRABAJO Y RECTITUD 12/05/2015 1 - 1 FUNDAMENTOS DE PROGRAMACIÓN Escuela de Sistemas

120 120 AÑOS AÑOS DE TRABAJO DE TRABAJO Y RECTITUDY RECTITUD

04/22/2304/22/23 1 - 38

Escuela de SistemasEscuela de Sistemas