SlideShare una empresa de Scribd logo
LÓGICA DE PROGRAMACIÓN
José David Uc Salas
jose.uc@uppuebla.edu.mx
Universidad Politécnica de Puebla
Conceptos básicos y metodología para la
solución de problemas
Septiembre-2017
Grupo EA
Objetivo de la sesión
11/09/2017
Lógica de Programación - Conceptos
básicos
2
Diseñar algoritmos para representar la solución de problemas.
Conocer las diferentes etapas de la resolución de problemas en
programación. Definir las etapas de Diseño, Análisis y
Verificación de algoritmos y conocer su importancia. Presentar
las técnicas principales empleadas en cada una de las etapas de
Diseño, Análisis y Verificación.
Algoritmos
• ¿Que es un algoritmo?
– “Una lista de instrucciones donde se especifica una
sucesión de operaciones necesarias para resolver
cualquier problema de un tipo dado”.
Algoritmos
Ejemplo sumar dos números
Algoritmos
1. 5+1=6
2. Anotar 6
3. 2+9=11
4. Anotar 1 y guardar 1
5. 4+0=4
6. 4+1=5
7. Anotar 5
8. El resultado es 516
491
+ 25
516
V
+ F
V
+
V V V
V F V
F V V
F F F
Algoritmos
Algoritmos
san
+ sano
sansano
Algoritmos
• Entrada
– ¿Qué se necesita para realizar los pasos?
• Salida
– ¿Que se obtiene al final del algoritmo?
• Tipos de datos
– Números: enteros, reales, complejos
– Texto: letras, palabras, frases
– Otros
Algoritmos
• Sirven para resolver un tipo de problema especifico.
• Son secuencias de pasos concretos.
• Requiere la definición de la entrada y la salida.
• Adecuados para ser ejecutados por un computador
Algoritmos
• ¿Qué tiene que ver con la programación?
– La programación consiste en crear programas de
computador que resuelvan problemas específicos.
– Un programa de computador es la implementación de un
algoritmo.
Algoritmos
• ¿Qué es un programa de computador?
– Es una secuencia de pasos a ejecutar
– Los pasos están descritos en un lenguaje especial.
– Este lenguaje se puede traducir al lenguaje del
computador.
– Por lo general es un archivo de texto.
– El texto escrito en dicho lenguaje se denomina el código
del programa.
Descripción de un algoritmo
• Es necesario contar con formas de expresar algoritmos
– Diseño del algoritmo antes de codificar
– Diseño del algoritmo de manera independiente del lenguaje de
programación
• Diferentes alternativas
– Pseudo - código
– Diagramas de flujo
– Diagramas de Nassi-Schneidermann
Descripción de un algoritmo
• Pseudo – código
– El algoritmo se expresa en
lenguaje natural
– Expresa de manera genérica
los pasos del algoritmo
– No provee detalles de la
implementación particular
del código final
Descripción de un algoritmo
• Diagramas de flujo
– Presentan el algoritmo de
manera gráfica.
– De gran utilidad para seguir la
“ruta” de un algoritmo.
– Aplicables a muchas otras
disciplinas.
Descripción de un algoritmo
• Diagrama de Nassi-
Schneidermann
– También se denominan diagramas
de caja.
– Menos usado que el diagrama de
flujo
– Mas ordenado
– Ocupa mucho espacio para
representar algoritmos complejos.
Construcción de un algoritmo
1. Definir el problema a resolver
2. Identificar las entradas del algoritmo
3. Identificar la salida del algoritmo
4. Definir los pasos a seguir para convertir las entradas
en la salida
5. Seguir los pasos y comprobar que el algoritmo sea
correcto analizando la salida.
6. Revisar los pasos y hacer las correcciones.
7. Resolver el problema.
Construcción de un algoritmo
• Construcción de un programa
1. Definir el problema a resolver
2. Definir el algoritmo que lo resuelve
3. Escribir el programa
• Escribir cada uno de los pasos del algoritmo en el lenguaje de
programación
4. Ejecutar el programa en el computador
5. Verificar que las salidas sean correctas
6. Hacer correcciones al programa
7. Resolver el problema
Construcción de un algoritmo
• Ejemplo:
– Objetivo: Calcular el precio de una manzana
– Entradas
• Precio (en pesos) del kilo de manzanas [K]
• Peso (en gramos) promedio de una manzana[P]
– Salida
• Precio (en pesos) de una manzana [M]
Construcción de un algoritmo
Inicio
Ingresar valor de K y P
Calcular G = K/1000
Calcular M = G x P
Devolver el valor de M
Fin.
Construcción de un algoritmo
G=K/1000
M=G x P
Ingresar K y P
Devolver M
Construcción de un algoritmo
G=K/1000
M=G x P
Ingresar K y P
Devolver M
Construcción de un algoritmo
• Operaciones básicas
– Entrada de datos
– Salida de datos
– Utilización de variables
– Utilización de constantes
– Aplicación de operadores
– Asignación de valores
• Combinación de operaciones básicas
– Secuencial
– Selectiva
– Repetitiva
Entrada de datos
• Los algoritmos son para solucionar tipos de
problemas
• Es imprescindible poder entregar entradas distintas
en cada ejecución
• La entrada de datos se realiza mediante algún
dispositivo
Entrada de datos
• Dispositivos de entrada
– Teclado
– Mouse
– Botones
– Censores de tacto
– Cámaras digitales
– Scanners
– Archivos
Entrada de datos
Entrada de datos
• Cada dispositivo tiene distintas características.
• Por lo general, sirven para cosas distintas
• Los sistemas definen un dispositivo de entrada por
defecto
– Este dispositivo se denomina la entrada estándar.
– En un computador suele ser el teclado.
Salida de datos
• De nada sirve implementar un algoritmo si no
podemos saber su resultado.
• Al finalizar el algoritmo (o durante), es
imprescindible obtener la información resultante de
su ejecución.
• La salida de datos se realiza mediante dispositivos.
Salida de datos
• Dispositivos de salida
– Pantalla
– Impresora
– Parlantes
– Tableros luminosos
– Motores
– Tarjeta de red
– Archivos
Salida de datos
C:
Salida de datos
• Al igual que con la entrada, cada dispositivo tiene
finalidades distintas.
• Los sistemas definen un dispositivo de salida por
defecto
– Este dispositivo se denomina la salida estándar.
– En un computador suele ser la pantalla.
Utilización de variables
• Durante la ejecución del algoritmo, es importante
recordar los resultados parciales de cada paso.
• Estos resultados se etiquetan con un nombre.
• Al invocar con posterioridad ese nombre,
recuperamos el resultados parcial.
Utilización de variables
G=K/1000
Esta variable se denomina G y se utiliza
para recordar el valor de un gramo de
manzana.
K es un dato de entrada, y también
Se considera una variable
Utilización de variables
• La principal característica de una variable es que su
valor puede cambiar en el tiempo.
• Usualmente se compara con una caja donde se
puede almacenar una sola “cosa”.
• Por lo general, las variables se definen con un tipo de
dato.
• El tipo de dato restringe que tipo de “cosas” se
pueden guardar en las “cajas”.
Utilización de constantes
• Además de las variables, un algoritmo requiere de
constantes.
• A diferencia de las variables, su valor no puede
cambiar en el tiempo.
• Las constantes también pueden recibir nombres para
mayor claridad.
– Ej.: PI = 3.1415
Utilización de constantes
G=K/1000
La constante “1000” sirva para transformar
el valor Por kilo a un valor por gramo
Aplicación de operadores
• Para obtener resultados, generalmente es necesario
“transformar” las entradas en la salida.
• Para esto se aplican operadores de distinta índole
– Aritméticos ( + , - , * , / )
– Lógicos (igual que, mayor que, menor que, y, o, no)
– Etc.
• Los operadores requieren de operandos y entregan
un resultado.
• Por lo general, los operadores son unarios o binarios.
Aplicación de operadores
M=G * P
operandos
operador
Asignación de valores
• El resultado de un operador se puede almacenar en
una variable.
• Para esto se utiliza un tipo especial de operador.
• Este es el operador de asignación.
• Solo se pueden asignar valores a variables, no a
constantes
Asignación de valores
M=G * P
Operador de asignación
El resultado de GxP se asigna a la variable M
Combinación de operaciones básicas
• Secuencial
– Un conjunto de operaciones básicas pueden ser ejecutadas
en forma secuencial.
– Una operación no inicia hasta que la anterior termina
Combinación de operaciones básicas
G=K/1000
M=G * P
Ingresar K y P
Devolver M
Ingresar K=200 y P=250
G tiene el valor 0,2
M tiene el valor 50
G=K/1000
M=G * P
Ingresar K y P
Devolver M
Diagrama de flujo
Diagrama de Nassi-Schneidermann
¡MUCHAS GRACIAS!

Más contenido relacionado

La actualidad más candente

Pricipios de Programación
Pricipios de Programación Pricipios de Programación
Pricipios de Programación
Adolfo Vazcoy
 
Algoritmos y clase
Algoritmos y claseAlgoritmos y clase
Algoritmos y clasedaosma
 
Fundamentos de Programacion - Unidad 2 Algoritmos
Fundamentos de Programacion - Unidad 2 AlgoritmosFundamentos de Programacion - Unidad 2 Algoritmos
Fundamentos de Programacion - Unidad 2 Algoritmos
José Antonio Sandoval Acosta
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
Edison Morales
 
Clase de algoritmos
Clase de algoritmosClase de algoritmos
Clase de algoritmos
Sol Hernández
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
09072014
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos computacionales y programación: 1
 Algoritmos computacionales y programación: 1 Algoritmos computacionales y programación: 1
Algoritmos computacionales y programación: 1
Universidad Veracruzana
 
Analisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacioAnalisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacio
Adamari Cortes
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadoras
Josmary Romero
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónMarco Chunab
 
Foro de integracion
Foro de integracionForo de integracion
Foro de integracion
José Cabezas
 
Tic modulo 4 final
Tic modulo 4 finalTic modulo 4 final
Tic modulo 4 finalkare
 
Tic modulo 4 final
Tic modulo 4 finalTic modulo 4 final
Tic modulo 4 finalkare
 
Definición y análisis de un problema
Definición y análisis de un problemaDefinición y análisis de un problema
Definición y análisis de un problemaJoaquin Lara Sierra
 

La actualidad más candente (19)

Pricipios de Programación
Pricipios de Programación Pricipios de Programación
Pricipios de Programación
 
Algoritmos y clase
Algoritmos y claseAlgoritmos y clase
Algoritmos y clase
 
Fundamentos de Programacion - Unidad 2 Algoritmos
Fundamentos de Programacion - Unidad 2 AlgoritmosFundamentos de Programacion - Unidad 2 Algoritmos
Fundamentos de Programacion - Unidad 2 Algoritmos
 
Ayudantia 1
Ayudantia 1Ayudantia 1
Ayudantia 1
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Clase 2
Clase 2Clase 2
Clase 2
 
Algoritmos2
Algoritmos2Algoritmos2
Algoritmos2
 
Clase de algoritmos
Clase de algoritmosClase de algoritmos
Clase de algoritmos
 
4 algoritmos
4 algoritmos4 algoritmos
4 algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos computacionales y programación: 1
 Algoritmos computacionales y programación: 1 Algoritmos computacionales y programación: 1
Algoritmos computacionales y programación: 1
 
Analisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacioAnalisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacio
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadoras
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Foro de integracion
Foro de integracionForo de integracion
Foro de integracion
 
Tic modulo 4 final
Tic modulo 4 finalTic modulo 4 final
Tic modulo 4 final
 
Tic modulo 4 final
Tic modulo 4 finalTic modulo 4 final
Tic modulo 4 final
 
Definición y análisis de un problema
Definición y análisis de un problemaDefinición y análisis de un problema
Definición y análisis de un problema
 

Similar a 2 lop–cv-20017-3-conceptos básicos y metodología para la solución de problemas

01 algoritmos
01 algoritmos01 algoritmos
01 algoritmos
Carlos Diaz
 
Algoritmos.ppt
Algoritmos.pptAlgoritmos.ppt
Algoritmos.ppt
DemsshillCoutino
 
Algoritmos.pdf
Algoritmos.pdfAlgoritmos.pdf
Algoritmos.pdf
DEMSSHILLLEONELCOUTI
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
CarlosJahnsen3
 
01 algoritmos
01 algoritmos01 algoritmos
01 algoritmosCarlos
 
01 algoritmos
01 algoritmos01 algoritmos
01 algoritmosCarlos
 
01 algoritmos
01 algoritmos01 algoritmos
01 algoritmosCarlos
 
Unidad 1 Introducción a los Algoritmos.ppt
Unidad 1 Introducción a los Algoritmos.pptUnidad 1 Introducción a los Algoritmos.ppt
Unidad 1 Introducción a los Algoritmos.ppt
ssuser6eba56
 
Unidad 2 introducción a los algoritmos
Unidad 2 introducción a los algoritmosUnidad 2 introducción a los algoritmos
Unidad 2 introducción a los algoritmos
Alexandra Ochoa
 
Algoritmos2daparte
Algoritmos2daparteAlgoritmos2daparte
Algoritmos2daparte
Samir Chirinos
 
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
anytrix
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
Lincoln School
 
Unidad 1 algoritmos
Unidad 1 algoritmosUnidad 1 algoritmos
Unidad 1 algoritmos
Cristopher Garrido Martell
 
AlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdfAlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdf
HadasitaRodriguezFue
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
Alejandro Leon Cerna
 
01-algoritmos.ppt
01-algoritmos.ppt01-algoritmos.ppt
01-algoritmos.ppt
jirestharamlopez
 
algoritmos.ppt
algoritmos.pptalgoritmos.ppt
algoritmos.ppt
cesar371646
 
Programación
ProgramaciónProgramación
Programación
belenramiz
 

Similar a 2 lop–cv-20017-3-conceptos básicos y metodología para la solución de problemas (20)

01 algoritmos
01 algoritmos01 algoritmos
01 algoritmos
 
Algoritmos.ppt
Algoritmos.pptAlgoritmos.ppt
Algoritmos.ppt
 
Algoritmos.pdf
Algoritmos.pdfAlgoritmos.pdf
Algoritmos.pdf
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
 
01 algoritmos
01 algoritmos01 algoritmos
01 algoritmos
 
ALGORITMOS
ALGORITMOSALGORITMOS
ALGORITMOS
 
01 algoritmos
01 algoritmos01 algoritmos
01 algoritmos
 
01 algoritmos
01 algoritmos01 algoritmos
01 algoritmos
 
Resolucion de problemas
Resolucion de problemasResolucion de problemas
Resolucion de problemas
 
Unidad 1 Introducción a los Algoritmos.ppt
Unidad 1 Introducción a los Algoritmos.pptUnidad 1 Introducción a los Algoritmos.ppt
Unidad 1 Introducción a los Algoritmos.ppt
 
Unidad 2 introducción a los algoritmos
Unidad 2 introducción a los algoritmosUnidad 2 introducción a los algoritmos
Unidad 2 introducción a los algoritmos
 
Algoritmos2daparte
Algoritmos2daparteAlgoritmos2daparte
Algoritmos2daparte
 
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
 
Unidad 1 algoritmos
Unidad 1 algoritmosUnidad 1 algoritmos
Unidad 1 algoritmos
 
AlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdfAlgoritmoSoluciondeProblema.pdf
AlgoritmoSoluciondeProblema.pdf
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
01-algoritmos.ppt
01-algoritmos.ppt01-algoritmos.ppt
01-algoritmos.ppt
 
algoritmos.ppt
algoritmos.pptalgoritmos.ppt
algoritmos.ppt
 
Programación
ProgramaciónProgramación
Programación
 

Último

Libro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdfLibro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdf
danitarb
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
FelixCamachoGuzman
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
20minutos
 
Evaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primariaEvaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primaria
SoniaMedina49
 
El ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURAEl ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURA
Armando920824
 
Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.
amayaltc18
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
pablomarin116
 
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptxc3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
Martín Ramírez
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
SandraBenitez52
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
lautyzaracho4
 
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
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
arleyo2006
 
El lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libroEl lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libro
Distea V región
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
20minutos
 
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docxENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
SandraPiza2
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
auxsoporte
 
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
María Sánchez González (@cibermarikiya)
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
El Fortí
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
almitamtz00
 
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Unidad de Espiritualidad Eudista
 

Último (20)

Libro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdfLibro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdf
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
 
Evaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primariaEvaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primaria
 
El ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURAEl ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURA
 
Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
 
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptxc3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
 
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
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
 
El lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libroEl lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libro
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
 
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docxENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
 
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
 
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
 

2 lop–cv-20017-3-conceptos básicos y metodología para la solución de problemas

  • 1. LÓGICA DE PROGRAMACIÓN José David Uc Salas jose.uc@uppuebla.edu.mx Universidad Politécnica de Puebla Conceptos básicos y metodología para la solución de problemas Septiembre-2017 Grupo EA
  • 2. Objetivo de la sesión 11/09/2017 Lógica de Programación - Conceptos básicos 2 Diseñar algoritmos para representar la solución de problemas. Conocer las diferentes etapas de la resolución de problemas en programación. Definir las etapas de Diseño, Análisis y Verificación de algoritmos y conocer su importancia. Presentar las técnicas principales empleadas en cada una de las etapas de Diseño, Análisis y Verificación.
  • 3. Algoritmos • ¿Que es un algoritmo? – “Una lista de instrucciones donde se especifica una sucesión de operaciones necesarias para resolver cualquier problema de un tipo dado”.
  • 5. Algoritmos 1. 5+1=6 2. Anotar 6 3. 2+9=11 4. Anotar 1 y guardar 1 5. 4+0=4 6. 4+1=5 7. Anotar 5 8. El resultado es 516 491 + 25 516
  • 6. V + F V + V V V V F V F V V F F F Algoritmos
  • 8. Algoritmos • Entrada – ¿Qué se necesita para realizar los pasos? • Salida – ¿Que se obtiene al final del algoritmo? • Tipos de datos – Números: enteros, reales, complejos – Texto: letras, palabras, frases – Otros
  • 9. Algoritmos • Sirven para resolver un tipo de problema especifico. • Son secuencias de pasos concretos. • Requiere la definición de la entrada y la salida. • Adecuados para ser ejecutados por un computador
  • 10. Algoritmos • ¿Qué tiene que ver con la programación? – La programación consiste en crear programas de computador que resuelvan problemas específicos. – Un programa de computador es la implementación de un algoritmo.
  • 11. Algoritmos • ¿Qué es un programa de computador? – Es una secuencia de pasos a ejecutar – Los pasos están descritos en un lenguaje especial. – Este lenguaje se puede traducir al lenguaje del computador. – Por lo general es un archivo de texto. – El texto escrito en dicho lenguaje se denomina el código del programa.
  • 12. Descripción de un algoritmo • Es necesario contar con formas de expresar algoritmos – Diseño del algoritmo antes de codificar – Diseño del algoritmo de manera independiente del lenguaje de programación • Diferentes alternativas – Pseudo - código – Diagramas de flujo – Diagramas de Nassi-Schneidermann
  • 13. Descripción de un algoritmo • Pseudo – código – El algoritmo se expresa en lenguaje natural – Expresa de manera genérica los pasos del algoritmo – No provee detalles de la implementación particular del código final
  • 14. Descripción de un algoritmo • Diagramas de flujo – Presentan el algoritmo de manera gráfica. – De gran utilidad para seguir la “ruta” de un algoritmo. – Aplicables a muchas otras disciplinas.
  • 15. Descripción de un algoritmo • Diagrama de Nassi- Schneidermann – También se denominan diagramas de caja. – Menos usado que el diagrama de flujo – Mas ordenado – Ocupa mucho espacio para representar algoritmos complejos.
  • 16. Construcción de un algoritmo 1. Definir el problema a resolver 2. Identificar las entradas del algoritmo 3. Identificar la salida del algoritmo 4. Definir los pasos a seguir para convertir las entradas en la salida 5. Seguir los pasos y comprobar que el algoritmo sea correcto analizando la salida. 6. Revisar los pasos y hacer las correcciones. 7. Resolver el problema.
  • 17. Construcción de un algoritmo • Construcción de un programa 1. Definir el problema a resolver 2. Definir el algoritmo que lo resuelve 3. Escribir el programa • Escribir cada uno de los pasos del algoritmo en el lenguaje de programación 4. Ejecutar el programa en el computador 5. Verificar que las salidas sean correctas 6. Hacer correcciones al programa 7. Resolver el problema
  • 18. Construcción de un algoritmo • Ejemplo: – Objetivo: Calcular el precio de una manzana – Entradas • Precio (en pesos) del kilo de manzanas [K] • Peso (en gramos) promedio de una manzana[P] – Salida • Precio (en pesos) de una manzana [M]
  • 19. Construcción de un algoritmo Inicio Ingresar valor de K y P Calcular G = K/1000 Calcular M = G x P Devolver el valor de M Fin.
  • 20. Construcción de un algoritmo G=K/1000 M=G x P Ingresar K y P Devolver M
  • 21. Construcción de un algoritmo G=K/1000 M=G x P Ingresar K y P Devolver M
  • 22. Construcción de un algoritmo • Operaciones básicas – Entrada de datos – Salida de datos – Utilización de variables – Utilización de constantes – Aplicación de operadores – Asignación de valores • Combinación de operaciones básicas – Secuencial – Selectiva – Repetitiva
  • 23. Entrada de datos • Los algoritmos son para solucionar tipos de problemas • Es imprescindible poder entregar entradas distintas en cada ejecución • La entrada de datos se realiza mediante algún dispositivo
  • 24. Entrada de datos • Dispositivos de entrada – Teclado – Mouse – Botones – Censores de tacto – Cámaras digitales – Scanners – Archivos
  • 26. Entrada de datos • Cada dispositivo tiene distintas características. • Por lo general, sirven para cosas distintas • Los sistemas definen un dispositivo de entrada por defecto – Este dispositivo se denomina la entrada estándar. – En un computador suele ser el teclado.
  • 27. Salida de datos • De nada sirve implementar un algoritmo si no podemos saber su resultado. • Al finalizar el algoritmo (o durante), es imprescindible obtener la información resultante de su ejecución. • La salida de datos se realiza mediante dispositivos.
  • 28. Salida de datos • Dispositivos de salida – Pantalla – Impresora – Parlantes – Tableros luminosos – Motores – Tarjeta de red – Archivos
  • 30. Salida de datos • Al igual que con la entrada, cada dispositivo tiene finalidades distintas. • Los sistemas definen un dispositivo de salida por defecto – Este dispositivo se denomina la salida estándar. – En un computador suele ser la pantalla.
  • 31. Utilización de variables • Durante la ejecución del algoritmo, es importante recordar los resultados parciales de cada paso. • Estos resultados se etiquetan con un nombre. • Al invocar con posterioridad ese nombre, recuperamos el resultados parcial.
  • 32. Utilización de variables G=K/1000 Esta variable se denomina G y se utiliza para recordar el valor de un gramo de manzana. K es un dato de entrada, y también Se considera una variable
  • 33. Utilización de variables • La principal característica de una variable es que su valor puede cambiar en el tiempo. • Usualmente se compara con una caja donde se puede almacenar una sola “cosa”. • Por lo general, las variables se definen con un tipo de dato. • El tipo de dato restringe que tipo de “cosas” se pueden guardar en las “cajas”.
  • 34. Utilización de constantes • Además de las variables, un algoritmo requiere de constantes. • A diferencia de las variables, su valor no puede cambiar en el tiempo. • Las constantes también pueden recibir nombres para mayor claridad. – Ej.: PI = 3.1415
  • 35. Utilización de constantes G=K/1000 La constante “1000” sirva para transformar el valor Por kilo a un valor por gramo
  • 36. Aplicación de operadores • Para obtener resultados, generalmente es necesario “transformar” las entradas en la salida. • Para esto se aplican operadores de distinta índole – Aritméticos ( + , - , * , / ) – Lógicos (igual que, mayor que, menor que, y, o, no) – Etc. • Los operadores requieren de operandos y entregan un resultado. • Por lo general, los operadores son unarios o binarios.
  • 37. Aplicación de operadores M=G * P operandos operador
  • 38. Asignación de valores • El resultado de un operador se puede almacenar en una variable. • Para esto se utiliza un tipo especial de operador. • Este es el operador de asignación. • Solo se pueden asignar valores a variables, no a constantes
  • 39. Asignación de valores M=G * P Operador de asignación El resultado de GxP se asigna a la variable M
  • 40. Combinación de operaciones básicas • Secuencial – Un conjunto de operaciones básicas pueden ser ejecutadas en forma secuencial. – Una operación no inicia hasta que la anterior termina
  • 41. Combinación de operaciones básicas G=K/1000 M=G * P Ingresar K y P Devolver M Ingresar K=200 y P=250 G tiene el valor 0,2 M tiene el valor 50 G=K/1000 M=G * P Ingresar K y P Devolver M Diagrama de flujo Diagrama de Nassi-Schneidermann