SlideShare una empresa de Scribd logo
Escuela de Sistemas, Facultad de Minas
 Universidad Nacional de Colombia – Sede Medellín


Fundamentos de Programación
         Clase 1
Contenido

  Introducción
  Presentación del curso y cronograma del semestre
  Metodología de trabajo
  Conceptos básicos de programación
                                                                Profesores:
                                               Jovani Alberto Jiménez Builes
                                                    William Álvarez Montoya
                                                        Guillermo González
                                                             Danilo Bedoya
Importancia de la computación
• Los computadores y las redes de computadores se
han convertido en una herramienta imprescindible
en toda área técnica y de ingeniería.
                          ingeniería.
• Todo técnico y profesional debe manejar y aplicar
eficientemente dicha herramienta, en sus áreas
propias de profesión.
           profesión.
Objetivos del curso
Desarrollar capacidades lógico - abstractas para
el análisis, implementación y solución de
problemas, mediante un enfoque algorítmico.
                                 algorítmico.

Incentivar el aprendizaje de un lenguaje de
programación específico: Visual Basic for
                específico:
Applications (VBA).
             (VBA).
Contenido del curso
Introducción
Entrada y salida de datos
Secuenciamiento
Condicionales
Iteración definida
Iteración indefinida
Vectores
Tipos de datos definidos por el usuario
Matrices
Funciones y subprogramas
Metodología
• Clases magistrales (Auditorio 12-204).
                                12-204)
• Clases prácticas (Sala de cómputo 41-214)
                                     41-214)
• Tareas extraclase
• Talleres y asesorías semanales
• Seguimiento de la página del curso
• Aprendizaje vía ejemplos y aprendizaje activo.
                                         activo.

Requisitos:
Requisitos: matemáticas básicas

Sobre técnicas básicas de estudio ver el documento: «Cómo estudiar
y aprender una disciplina», por Richard Paul y Linda Elder, de la
Fundación para El Pensamiento Crítico, 2003, www.criticalthinking.org
Bibliografía y referencias
   Brassard,
   Brassard G. y Bratley, P.: «Fundamentos de ALGORITMIA»,
Prentice Hall International, Madrid (España), 1997.
    Oviedo,
    Oviedo 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.
   Lopez,
   Lopez Leobardo: “Programación Estructurada, un enfoque
algorítmico”, AlfaOmega, 2002
    Chapra, Steven C. & Canale, Raymond P.: «Numerical Methods
for Engineers», McGraw-Hill, 2002, Caps.: 1, 2, 5, 6, 8, 9, 12, 17, 20,
                McGraw-
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.
Página Web del curso

       http://virtual2.unalmed.edu.co/moodle
Facultad de minas – Fundamentos de programación


Clases prácticas y teóricas
Ejemplos interactivos
Problemateca
Talleres online
Foros y chat
Documentos, manuales y enlaces de interés
Técnicas de estudio
Didáctica del curso
                                      Antes:
   Clase Teórica                        Leer guía
                                        Repasar conceptos previos

                                      Durante:
                                        Prestar atención y tomar apuntes
   Clase Práctica                       Guardar proyecto (en la práctica)
                                        Formular preguntas.

                                      Después:
                                        Realizar tareas
Talleres y asesorías                    Contrastar con lo aprendido anteriormente

                                      Antes:
                                        Repasar conceptos vistos en clase

 Trabajo personal                     Durante:
                                        Prestar atención y tomar apuntes
                                        Formular preguntas

                    Problemateca      Después:
                  Talleres en línea     Hacer los ejercicios de nuevo por si mismos
                   Libros de texto      Realizar tareas
      No dejar acumular contenidos
Para que el computador?
                       • En el diseño y cálculo de la estructura de un edificio,
                       por ejemplo, se tardaría meses hacer las operaciones
Cálculos Repetitivos   matemáticas manualmente.
                       • El computador, mediante los programas respectivos,
                       realiza tales procesos en pocos minutos.

Grandes volúmenes      • En las empresas, los procesos de inventarios, por
                       ejemplo, con decenas de miles de artículos.
de información         • Otros ejemplos son los procesos de nómina, contables,
                       financieros, de facturación, de proveedores, etc.

                       • El software, a través de los computadores, puede
Complejidad cálculos   manejar procesos complejos de tipo lógico y
                       matemático.
                       • Ejemplos: Inteligencia Artificial, Sistemas Expertos, etc.

Velocidad de proceso
                       • A todo nivel organizacional se requieren respuestas en
y de respuesta         tiempo real.

                       • Las máquinas (los computadores), en general, suelen
                       ser más precisas que las personas.
                       • Esta capacidad de las máquinas es especialmente útil
Precisión              en los cálculos de Ingeniería.
El concepto de algoritmo
¿Qué es un algoritmo?
Es una secuencia de procesos (tareas, operaciones)
ordenada lógicamente que permite obtener ciertos
resultados a partir de ciertos datos.


Diseñar un buen algoritmo exige un buen nivel de
abstracción, lógica, imaginación, creatividad, dominio de
las técnicas de programación, y algo de dominio del área
del problema que se intenta resolver.


Por esta razón es que diseñar un algoritmo se considera
tanto ciencia como arte.
Diseño de algoritmos
                         • Un algoritmo se elabora (construye) mediante ciertos
                         componentes básicos llamados estructuras
Estructuras básicas      • Por esta razón, este tipo de programación se conoce
                         como programación estructurada

1. Entrada y salida de   • Todo algoritmo tiene cero o más entradas y debe mostrar
                         uno o más resultados
datos
                         • Todo algoritmo es una secuencia lógica de ciertas
2. Secuencia             operaciones


                         • Permite elegir una de dos o más vías de acción
3. Selección lógica      (alternativas)


                         • Es la repetición de una o más operaciones.
4. Iteración             • De antemano, puede conocerse o no cuántas veces se
                         repetirán las operaciones (iteración definida o indefinida)
Diseño de algoritmos


ENTRADA          PROCESAMIENTO                      SALIDA

 Datos de        Cálculos matemáticos y    Muestran Resultados
 entrada                 lógicos            Graban
                                           Imprimen
                                          Transmiten




   Esquema genérico de un algoritmo secuencial
Diseño de algoritmos

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

Análisis:
Análisis:
¿Cuáles son los datos de entrada?
¿Cuáles son los datos de salida?
¿Qué cálculos/procesos deben llevarse a cabo?
Diseño de algoritmos

  DATOS DE
                Base, Altura
  ENTRADA



PROCESAMIENTO         Área =
                  (Base*Altura)/2


  DATOS DE
                Área
   SALIDA
Representación de algoritmos
Pseudocódigo                Diagrama de caja

INICIO                      INICIO
   Leer Base, Altura        Leer Base, Altura
   Area = (Base*Altura)/2   Area = (Base*Altura)/2
   Mostrar Area
                            Mostrar Area
FIN
                            FIN
Diseño de algoritmos
Ejemplo 2
Diseñar un algoritmo para calcular el perímetro de un
círculo

Análisis:
Análisis:
                                    INICIO
¿Cuáles son los datos de entrada?
¿π es dato de entrada?              Leer Radio
¿Cuáles son los datos de salida?    Prm = 2*Pi*Radio
¿Qué cálculos/procesos deben        Mostrar Prm
llevarse a cabo?
                                    FIN
Diseño de algoritmos
Ejemplo 3
Suponga 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álisis?
Análisis?
 INICIO
     Leer numero_unidades
     Impuestos = numero_unidades* $700.000 * 0.16
     Total = numero_unidades* $700.000 + Impuestos
     Mostrar Total, Impuestos
 FIN
Algoritmo, Lenguaje y Programa

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.


Un conjunto de programas con un fin específico
constituye un software.
Lenguajes y entornos de
               programación
• Basic / Visual Basic
• C / C++
• Java
• Pascal
• Fortran / Visual Fortran
• PHP
•…
Metodología general de trabajo
1. Análisis del            • Entender el problema.
                           • Identificar las variables (de entrada, de salida
problema                   e intermedias) y las constantes
                           • Identificar las restricciones y relaciones
                           matemáticas y lógicas entre variables y
                           constantes

2. Diseño de una           • Representar la secuencia de pasos
                           (operaciones, o procesos) de manera lógica,
solución                   mediante una forma apropiada (pseudocódigo,
                           diagrama de caja, diagrama de flujo
                                                          flujo).

3. Validación de la        • Realizar prueba de escritorio al algoritmo para
                           validar que haga lo que debe hacer
solución
4. Codificación en un      • Elaborar la interfaz gráfica del usuario (si se
                           trata de un lenguaje de programación visual).
lenguaje de programación   • Escribir los procedimientos pertinentes.
                           • Ejecutar y depurar el código
Tareas
1. Ingresar a la página del curso y resolver el primer
   cuestionario
2. Elaborar algoritmos (en pseudocódigo o
   diagrama de caja) para los problemas 1 a 6 de la
   Problemateca 1.
3. Efectuar una lectura previa de la clase teórica 2 y
   práctica 1
Importante

Las clases prácticas comienzan la próxima
semana.
semana.
Se recomienda llevar memoria USB para grabar
los trabajos o emplear el servicio de ftp que está
disponible para todos los estudiantes.
                          estudiantes.
Fundamentos de Programación
         Clase 1


   FIN DE LA CLASE

  Gracias por la atención

        Escuela de Sistemas, Facultad de Minas
   Universidad Nacional de Colombia – Sede Medellín

Más contenido relacionado

Similar a Clase 01

Algoritmos y Programación
Algoritmos y ProgramaciónAlgoritmos y Programación
Algoritmos y Programación
Juan Guadama
 
Introduccion.ppt
Introduccion.pptIntroduccion.ppt
Introduccion.ppt
Daniel Carpio Contreras
 
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmosIng. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
José Antonio Sandoval Acosta
 
Guia de programación 10
Guia de programación 10Guia de programación 10
Guia de programación 10mariacepla
 
Programación algoritmica
Programación algoritmicaProgramación algoritmica
Programación algoritmicaMaría C. Plata
 
AlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdfAlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdf
HadasitaRodriguezFue
 
INF-102
INF-102INF-102
SYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdf
SYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdfSYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdf
SYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdf
kevinbriones15
 
Sesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.pptSesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.ppt
samirvidal1
 
La Robotica y sus aplicaciones
La Robotica y sus aplicacionesLa Robotica y sus aplicaciones
La Robotica y sus aplicaciones
ManuelMuoz210
 
Pasos para realizar un problema en computador
Pasos para realizar un problema en computadorPasos para realizar un problema en computador
Pasos para realizar un problema en computadorAlex Rommyo
 
Pasos para realizar un problema en computador
Pasos para realizar un problema en computadorPasos para realizar un problema en computador
Pasos para realizar un problema en computadorAlex Rommyo
 
Arquitectura del computador.
Arquitectura del computador.Arquitectura del computador.
Arquitectura del computador.
franbrito94
 
Presentacion ii algoritmos_parte2
Presentacion ii algoritmos_parte2Presentacion ii algoritmos_parte2
Presentacion ii algoritmos_parte2
ymendal
 

Similar a Clase 01 (20)

Algoritmos y Programación
Algoritmos y ProgramaciónAlgoritmos y Programación
Algoritmos y Programación
 
Introduccion.ppt
Introduccion.pptIntroduccion.ppt
Introduccion.ppt
 
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmosIng. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
 
Clase 1
Clase 1Clase 1
Clase 1
 
Guia de programación 10
Guia de programación 10Guia de programación 10
Guia de programación 10
 
Programación algoritmica
Programación algoritmicaProgramación algoritmica
Programación algoritmica
 
Manual practica 3 control analogico
Manual practica 3 control analogicoManual practica 3 control analogico
Manual practica 3 control analogico
 
AlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdfAlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdf
 
INF-102
INF-102INF-102
INF-102
 
SYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdf
SYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdfSYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdf
SYLLABUS FUNDAMENTOS DE PROGRAMACIÓN FCMF 2022 CI.pdf
 
Sesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.pptSesión1 Algoritmia Básica.ppt
Sesión1 Algoritmia Básica.ppt
 
La Robotica y sus aplicaciones
La Robotica y sus aplicacionesLa Robotica y sus aplicaciones
La Robotica y sus aplicaciones
 
Guia Aprendizaje Introduccion a la Programacion
Guia Aprendizaje  Introduccion a la ProgramacionGuia Aprendizaje  Introduccion a la Programacion
Guia Aprendizaje Introduccion a la Programacion
 
Pasos para realizar un problema en computador
Pasos para realizar un problema en computadorPasos para realizar un problema en computador
Pasos para realizar un problema en computador
 
Sesion 1.pptx
Sesion 1.pptxSesion 1.pptx
Sesion 1.pptx
 
Sesion 1 lbc
Sesion 1 lbcSesion 1 lbc
Sesion 1 lbc
 
Pasos para realizar un problema en computador
Pasos para realizar un problema en computadorPasos para realizar un problema en computador
Pasos para realizar un problema en computador
 
SILABO INF.102
SILABO INF.102SILABO INF.102
SILABO INF.102
 
Arquitectura del computador.
Arquitectura del computador.Arquitectura del computador.
Arquitectura del computador.
 
Presentacion ii algoritmos_parte2
Presentacion ii algoritmos_parte2Presentacion ii algoritmos_parte2
Presentacion ii algoritmos_parte2
 

Último

Educar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdfEducar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdf
Demetrio Ccesa Rayme
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
rosannatasaycoyactay
 
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONCAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
MasielPMP
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
Alejandrogarciapanta
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
https://gramadal.wordpress.com/
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
evalaución de reforzamiento de cuarto de secundaria de la competencia lee
evalaución de reforzamiento de cuarto de secundaria de la competencia leeevalaución de reforzamiento de cuarto de secundaria de la competencia lee
evalaución de reforzamiento de cuarto de secundaria de la competencia lee
MaribelGaitanRamosRa
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
Edurne Navarro Bueno
 
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docxSESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
QuispeJimenezDyuy
 
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
UNIDAD DE APRENDIZAJE DEL MES  Junio 2024UNIDAD DE APRENDIZAJE DEL MES  Junio 2024
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
EdwardYumbato1
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
20minutos
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
FelixCamachoGuzman
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
Alejandrino Halire Ccahuana
 
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLA
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLAACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLA
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLA
JAVIER SOLIS NOYOLA
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
BetzabePecheSalcedo1
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
TatianaVanessaAltami
 
Presentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos DigitalesPresentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos Digitales
nievesjiesc03
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
Mercedes Gonzalez
 
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptxAutomatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
GallardoJahse
 
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdfHABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
DIANADIAZSILVA1
 

Último (20)

Educar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdfEducar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdf
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
 
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONCAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
evalaución de reforzamiento de cuarto de secundaria de la competencia lee
evalaución de reforzamiento de cuarto de secundaria de la competencia leeevalaución de reforzamiento de cuarto de secundaria de la competencia lee
evalaución de reforzamiento de cuarto de secundaria de la competencia lee
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
 
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docxSESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
 
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
UNIDAD DE APRENDIZAJE DEL MES  Junio 2024UNIDAD DE APRENDIZAJE DEL MES  Junio 2024
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
 
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLA
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLAACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLA
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLA
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
 
Presentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos DigitalesPresentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos Digitales
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
 
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptxAutomatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
 
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdfHABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
 

Clase 01

  • 1. Escuela de Sistemas, Facultad de Minas Universidad Nacional de Colombia – Sede Medellín Fundamentos de Programación Clase 1 Contenido Introducción Presentación del curso y cronograma del semestre Metodología de trabajo Conceptos básicos de programación Profesores: Jovani Alberto Jiménez Builes William Álvarez Montoya Guillermo González Danilo Bedoya
  • 2. Importancia de la computación • Los computadores y las redes de computadores se han convertido en una herramienta imprescindible en toda área técnica y de ingeniería. ingeniería. • Todo técnico y profesional debe manejar y aplicar eficientemente dicha herramienta, en sus áreas propias de profesión. profesión.
  • 3. Objetivos del curso Desarrollar capacidades lógico - abstractas para el análisis, implementación y solución de problemas, mediante un enfoque algorítmico. algorítmico. Incentivar el aprendizaje de un lenguaje de programación específico: Visual Basic for específico: Applications (VBA). (VBA).
  • 4. Contenido del curso Introducción Entrada y salida de datos Secuenciamiento Condicionales Iteración definida Iteración indefinida Vectores Tipos de datos definidos por el usuario Matrices Funciones y subprogramas
  • 5. Metodología • Clases magistrales (Auditorio 12-204). 12-204) • Clases prácticas (Sala de cómputo 41-214) 41-214) • Tareas extraclase • Talleres y asesorías semanales • Seguimiento de la página del curso • Aprendizaje vía ejemplos y aprendizaje activo. activo. Requisitos: Requisitos: matemáticas básicas Sobre técnicas básicas de estudio ver el documento: «Cómo estudiar y aprender una disciplina», por Richard Paul y Linda Elder, de la Fundación para El Pensamiento Crítico, 2003, www.criticalthinking.org
  • 6. Bibliografía y referencias Brassard, Brassard G. y Bratley, P.: «Fundamentos de ALGORITMIA», Prentice Hall International, Madrid (España), 1997. Oviedo, Oviedo 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. Lopez, Lopez Leobardo: “Programación Estructurada, un enfoque algorítmico”, AlfaOmega, 2002 Chapra, Steven C. & Canale, Raymond P.: «Numerical Methods for Engineers», McGraw-Hill, 2002, Caps.: 1, 2, 5, 6, 8, 9, 12, 17, 20, McGraw- 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.
  • 7. Página Web del curso http://virtual2.unalmed.edu.co/moodle Facultad de minas – Fundamentos de programación Clases prácticas y teóricas Ejemplos interactivos Problemateca Talleres online Foros y chat Documentos, manuales y enlaces de interés Técnicas de estudio
  • 8.
  • 9.
  • 10.
  • 11. Didáctica del curso Antes: Clase Teórica Leer guía Repasar conceptos previos Durante: Prestar atención y tomar apuntes Clase Práctica Guardar proyecto (en la práctica) Formular preguntas. Después: Realizar tareas Talleres y asesorías Contrastar con lo aprendido anteriormente Antes: Repasar conceptos vistos en clase Trabajo personal Durante: Prestar atención y tomar apuntes Formular preguntas Problemateca Después: Talleres en línea Hacer los ejercicios de nuevo por si mismos Libros de texto Realizar tareas No dejar acumular contenidos
  • 12. Para que el computador? • En el diseño y cálculo de la estructura de un edificio, por ejemplo, se tardaría meses hacer las operaciones Cálculos Repetitivos matemáticas manualmente. • El computador, mediante los programas respectivos, realiza tales procesos en pocos minutos. Grandes volúmenes • En las empresas, los procesos de inventarios, por ejemplo, con decenas de miles de artículos. de información • Otros ejemplos son los procesos de nómina, contables, financieros, de facturación, de proveedores, etc. • El software, a través de los computadores, puede Complejidad cálculos manejar procesos complejos de tipo lógico y matemático. • Ejemplos: Inteligencia Artificial, Sistemas Expertos, etc. Velocidad de proceso • A todo nivel organizacional se requieren respuestas en y de respuesta tiempo real. • Las máquinas (los computadores), en general, suelen ser más precisas que las personas. • Esta capacidad de las máquinas es especialmente útil Precisión en los cálculos de Ingeniería.
  • 13. El concepto de algoritmo ¿Qué es un algoritmo? Es una secuencia de procesos (tareas, operaciones) ordenada lógicamente que permite obtener ciertos resultados a partir de ciertos datos. Diseñar un buen algoritmo exige un buen nivel de abstracción, lógica, imaginación, creatividad, dominio de las técnicas de programación, y algo de dominio del área del problema que se intenta resolver. Por esta razón es que diseñar un algoritmo se considera tanto ciencia como arte.
  • 14. Diseño de algoritmos • Un algoritmo se elabora (construye) mediante ciertos componentes básicos llamados estructuras Estructuras básicas • Por esta razón, este tipo de programación se conoce como programación estructurada 1. Entrada y salida de • Todo algoritmo tiene cero o más entradas y debe mostrar uno o más resultados datos • Todo algoritmo es una secuencia lógica de ciertas 2. Secuencia operaciones • Permite elegir una de dos o más vías de acción 3. Selección lógica (alternativas) • Es la repetición de una o más operaciones. 4. Iteración • De antemano, puede conocerse o no cuántas veces se repetirán las operaciones (iteración definida o indefinida)
  • 15. Diseño de algoritmos ENTRADA PROCESAMIENTO SALIDA Datos de Cálculos matemáticos y Muestran Resultados entrada lógicos Graban Imprimen Transmiten Esquema genérico de un algoritmo secuencial
  • 16. Diseño de algoritmos Ejemplo Diseñar un algoritmo para calcular el área de un triángulo Análisis: Análisis: ¿Cuáles son los datos de entrada? ¿Cuáles son los datos de salida? ¿Qué cálculos/procesos deben llevarse a cabo?
  • 17. Diseño de algoritmos DATOS DE Base, Altura ENTRADA PROCESAMIENTO Área = (Base*Altura)/2 DATOS DE Área SALIDA
  • 18. Representación de algoritmos Pseudocódigo Diagrama de caja INICIO INICIO Leer Base, Altura Leer Base, Altura Area = (Base*Altura)/2 Area = (Base*Altura)/2 Mostrar Area Mostrar Area FIN FIN
  • 19. Diseño de algoritmos Ejemplo 2 Diseñar un algoritmo para calcular el perímetro de un círculo Análisis: Análisis: INICIO ¿Cuáles son los datos de entrada? ¿π es dato de entrada? Leer Radio ¿Cuáles son los datos de salida? Prm = 2*Pi*Radio ¿Qué cálculos/procesos deben Mostrar Prm llevarse a cabo? FIN
  • 20. Diseño de algoritmos Ejemplo 3 Suponga 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álisis? Análisis? INICIO Leer numero_unidades Impuestos = numero_unidades* $700.000 * 0.16 Total = numero_unidades* $700.000 + Impuestos Mostrar Total, Impuestos FIN
  • 21. Algoritmo, Lenguaje y Programa 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. Un conjunto de programas con un fin específico constituye un software.
  • 22. Lenguajes y entornos de programación • Basic / Visual Basic • C / C++ • Java • Pascal • Fortran / Visual Fortran • PHP •…
  • 23. Metodología general de trabajo 1. Análisis del • Entender el problema. • Identificar las variables (de entrada, de salida problema e intermedias) y las constantes • Identificar las restricciones y relaciones matemáticas y lógicas entre variables y constantes 2. Diseño de una • Representar la secuencia de pasos (operaciones, o procesos) de manera lógica, solución mediante una forma apropiada (pseudocódigo, diagrama de caja, diagrama de flujo flujo). 3. Validación de la • Realizar prueba de escritorio al algoritmo para validar que haga lo que debe hacer solución 4. Codificación en un • Elaborar la interfaz gráfica del usuario (si se trata de un lenguaje de programación visual). lenguaje de programación • Escribir los procedimientos pertinentes. • Ejecutar y depurar el código
  • 24. Tareas 1. Ingresar a la página del curso y resolver el primer cuestionario 2. Elaborar algoritmos (en pseudocódigo o diagrama de caja) para los problemas 1 a 6 de la Problemateca 1. 3. Efectuar una lectura previa de la clase teórica 2 y práctica 1
  • 25. Importante Las clases prácticas comienzan la próxima semana. semana. Se recomienda llevar memoria USB para grabar los trabajos o emplear el servicio de ftp que está disponible para todos los estudiantes. estudiantes.
  • 26. Fundamentos de Programación Clase 1 FIN DE LA CLASE Gracias por la atención Escuela de Sistemas, Facultad de Minas Universidad Nacional de Colombia – Sede Medellín