SlideShare una empresa de Scribd logo
1 de 24
FUNDAMENTOS DE PROGRAMACIÓN
■ Fundamentos de Programación es una asignatura básica que permite crear programas
que exhiban un comportamiento deseado. El proceso de escribir código requiere
frecuentemente conocimientos en varias áreas distintas, además del dominio del
lenguaje a utilizar, algoritmos especializados y lógica formal.
■ Se llama Programación a la implementación de un algoritmo en un determinado
lenguaje de programación, para realizar un programa.
■ Algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han
de seguirse para resolver un problema.
■ Programa (Software en inglés) es una secuencia de instrucciones que una
computadora puede interpretar y ejecutar.
■ El proceso de creación de software es materia de la ingeniería del software, una de las
ramas propias de la Ingeniería Informática.
Medios de expresión de un algoritmo
■ Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje
natural, pseudocódigo,diagramas de flujo y lenguajes de programación entre otros.
■ Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar
pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural.
■ Dichas expresiones son formas más estructuradas para representar algoritmos; no
obstante, se mantienen independientes de un lenguaje de programación específico.
■ La descripción de un algoritmo usualmente se hace en tres niveles:
Medios de expresión de un algoritmo
■ Descripción de alto nivel. Se establece el problema, se selecciona un modelo
matemático y se explica el algoritmo de manera verbal, posiblemente con
ilustraciones y omitiendo detalles.
■ Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que
encuentran la solución.
■ Implementación. Se muestra el algoritmo expresado en un lenguaje de programación
específico o algún objeto capaz de llevar a cabo instrucciones.
Representación de Algoritmos
Hay distintos métodos de representar los algoritmos como:
oTexto: Se usa el lenguaje común para describir el algoritmo
■ Pseudocódigo: este tipo de representación mezcla el lenguaje de programación con un
idioma, ya sea español, ingles o cualquier otro, se puede definir como un lenguaje de
especificación de algoritmos. Es la representación narrativa de los pasos que debe de seguir
un algoritmo. Este método es mas compacto, mas fácil de escribir y mas fácil de transcribir
a un lenguaje de programación que el diagrama de flujo.
■ Diagrama de flujo: son herramientas graficas para representar algoritmos. esta
compuesto por símbolos, como: rectángulos rombos, cuadrados, etc., unidos por flechas,
estos símbolos representan acciones y orden en como se realizan estas. Es decir, los
diagramas de flujo son diagramas que emplean símbolos gráficos para representar
algoritmos.
■ o Diagrama de Nassi-Schneiderman:También conocido como diagrama de Chapín, es
un método se representación de algoritmos que combina la descripción textual con la
descripción grafica, es como una combinación del Pseudocódigo con el diagrama de
flujo. Por lo general todo lo que se puede representar en un diagrama de flujo se puede
representar en este tipo de diagrama
■ Nivel de implementación: consiste en expresar un algoritmo mediante una
maquinaria, un programa de computadora o algún objeto que realice las acciones
planteadas por el algoritmo en cuestión. En general, la implementación es el objetivo
de diseñar un algoritmo (pero no siempre).
■ Descripción Narrada
Este algoritmo es caracterizado porque sigue un proceso de ejecución común y lógico, describiendo
textualmente paso a paso cada una de las actividades a realizar dentro de una actividad determinada.
Ejemplo 1 Algoritmo para asistir a clases:
1. Levantarse
2. Bañarse
3.Vestirse
4. Desayunar
5. Cepillarse los dientes
6. Salir de casa
7.Tomar el autobús
8. Llegar a la Inst.
9. Buscar el aula
10. Ubicarse en un asiento
Pseudocódigo
■ El pseudocódigo (falso lenguaje, el prefijo pseudosignifica falso) es una descripción de
alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas
convenciones sintácticas propias de lenguajes de programación, como asignaciones,
ciclos y condicionales, aunque no está regido por ningún estándar. Es utilizado para
describir algoritmos en libros y publicaciones científicas, y como producto intermedio
durante el desarrollo de un algoritmo, como los Diagramas de flujo, aunque presentan
una ventaja importante sobre estos, y es que los algoritmos descritos en
pseudocódigo requieren menos espacio para representar instrucciones complejas.
■ Así el pseudodocódigo cumple con las funciones antes mencionadas para representar algo
abstracto los protocolos son los lenguajes para la programación.
Ejemplo 1
Diseñar un algoritmo que lea cuatro variables y calcule e imprima su producto y suma.
inicio
leer (a, b, c, d)
producto <-- (a * b * c * d)
suma <-- (a + b + c + d)
escribir (producto, suma)
fin
Diagrama de flujo
■ Son la representación gráfica de la solución algorítmica de un problema. Para
diseñarlos se utilizan determinados símbolos o figuras que representan una acción
dentro del procedimiento. Utilizan unos símbolos normalizados, con los pasos del
algoritmo escritos en el símbolo adecuado y los símbolos unidos con flechas,
denominadas líneas de flujo, que indican el orden en que los pasos deben ser
ejecutados
■ Los diagramas de flujo son descripciones gráficas de algoritmos; usan símbolos
conectados con flechas para indicar la secuencia de instrucciones
■ Los algoritmos pueden ser expresados de
muchas maneras, incluyendo al lenguaje
natural, pseudocódigo, diagramas de flujo y
lenguajes de programación entre otros. Las
descripciones en lenguaje natural tienden a
ser ambiguas y extensas.
■ El usar pseudocódigo y diagramas de flujo
evita muchas ambigüedades del lenguaje
natural. Dichas expresiones son formas más
estructuradas para representar algoritmos; no
obstante, se mantienen independientes de un
lenguaje de programación específico.
■ Para su elaboración se siguen ciertas reglas:
■ Se escribe de arriba hacia abajo y de izquierda a derecha
■ Siempre se usan flechas verticales u horizontales, jamás curvas
■ Evitar cruce de flujos
■ En cada paso expresar una acción concreta
■ Secuencia de flujo normal en una solución de problema
■ Tiene un inicio
■ Una lectura o entrada de datos
■ El proceso de datos
■ Una salida de información
■ Un final
Simbología para diseñar flujogramas.
■ VENTAJAS DE USAR FLUJOGRAMAS
■ Rápida comprensión de las relaciones
■ Análisis efectivo de las diferentes secciones del programa
■ Pueden usarse como modelos de trabajo en el diseño de nuevos programas o sistemas
■ Comunicación con el usuario
■ Documentación adecuada de los programas
■ Codificación eficaz de los programas
■ Depuración y pruebas ordenadas de programas
DESVENTAJAS DE LOS FLUJOGRAMAS
■ Diagramas complejos y detallados suelen ser
laboriosos en su planteamiento y diseño
■ Acciones a seguir tras la salida de un símbolo de
decisión, pueden ser difíciles de seguir si
existen diferentes caminos
■ No existen normas fijas para la elaboración de los
diagramas de flujo que permitan incluir todos los
detalles que el usuario desee introducir.
■ Implementación
■ Muchos algoritmos son ideados para implementarse en un programa. Sin embargo, los
algoritmos pueden ser implementados en otros medios, como una red neuronal, un circuito
eléctrico o un aparato mecánico y eléctrico. Algunos algoritmos inclusive se diseñan
especialmente para implementarse usando lápiz y papel
Ejemplos
■ Mostrar el resultado del área de un triángulo en pantalla.
■ Indicar si el número es par o impar:
La palabra mod significa dividir, por lo tanto mod
2 es dividir entre 2. Como ya debes saber si divido
un número entre 2 y el resto es 0 el número es
par, en caso contrario sería impar. Bien pues hay
esta la decisión.
¿Al dividirlo entre 2 el resto es 0? Hay 2
posibilidades. Si lo es, se ve en pantalla "Si es par",
si no lo es, se ve en pantalla "No es par". Eso es la
toma de decisiones.Toma una salida en función
del resultado de la entrada.
■ Tenemos que hacer un diagrama de flujo para mostrar la suma de los 50 primeros números.
Lo primero es poner a cero la suma y dar
el primer número a sumar que será el 0.
Fíjate que el diagrama acaba cuando N,
que es el número en cada momento, es
50. Mientras no sea 50 el programa
vuelve a la tercera secuencia que será
sumarle un número al anterior N = N +
1. Intenta comprenderlo y ver lo que
hace. Puedes realizar mentalmente el
diagrama para el número 0 y verás como
lo acabas entendiendo.
Ejercicios
1. Desarrolle un algoritmo que realice la sumatoria de los números enteros comprendidos
entre el 1 y el 10, es decir, 1+2+3+….+10.
2. Determinar la hipotenusa de un triangulo rectángulo conocidas las longitudes de sus dos
catetos. Desarrolle el algoritmo correspondiente.
3. Desarrolle un algoritmo que permita determinar el área y volumen de un cilindro dado su
radio (R) y altura (H).
4. Desarrolle un algoritmo que permita leer dos números y ordenarlos de menor a mayor, si
es el caso
5. Desarrolle un algoritmo que permita calcular Promedio de Notas
6. Convertir calificaciones numéricas (0 al 10) a calificaciones de “Aprobado” ó “Reprobado”,
siendo 7.0 la calificación mínima aprobatoria.
■ Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B y C
respectivamente. El algoritmo debe imprimir cual es el mayor y cual es el menor. Recuerde
constatar que los tres valores introducidos por el teclado sean valores distintos. Presente un
mensaje de alerta en caso de que se detecte la introducción de valores iguales.
■ https://sites.google.com/a/espe.edu.ec/fundamentos-de-programacion/
■ https://www.areatecnologia.com/diagramas-de-flujo.htm

Más contenido relacionado

La actualidad más candente

Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacionMichele André
 
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREAlgoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREPedro Alvarez
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónIng Cabrera
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosMary Sanchez
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2Noé AG
 
Unidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmosUnidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmosCarlos M. Sandoval
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicoscbertolotti
 
Metodologia Heuristica para Algoritmos
Metodologia Heuristica para AlgoritmosMetodologia Heuristica para Algoritmos
Metodologia Heuristica para AlgoritmosJesús Rojas
 
Fundamentos programación
Fundamentos programaciónFundamentos programación
Fundamentos programaciónMilton Escobar
 
algoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionalgoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionMIKE_INK_RM
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónEdison Morales
 
Algoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkAlgoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkLaurence HR
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica iiNoe Altamirano
 
Unidad Iii Generalidades Sobre Algoritmos
Unidad Iii Generalidades Sobre AlgoritmosUnidad Iii Generalidades Sobre Algoritmos
Unidad Iii Generalidades Sobre Algoritmosmarthaill10
 

La actualidad más candente (17)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacion
 
Unidad i-guia1
Unidad i-guia1Unidad i-guia1
Unidad i-guia1
 
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREAlgoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para Algoritmos
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
 
Unidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmosUnidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmos
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
Metodologia Heuristica para Algoritmos
Metodologia Heuristica para AlgoritmosMetodologia Heuristica para Algoritmos
Metodologia Heuristica para Algoritmos
 
Fundamentos programación
Fundamentos programaciónFundamentos programación
Fundamentos programación
 
algoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionalgoritmos y fundamentos de programacion
algoritmos y fundamentos de programacion
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Algoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkAlgoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tk
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica ii
 
Unidad Iii Generalidades Sobre Algoritmos
Unidad Iii Generalidades Sobre AlgoritmosUnidad Iii Generalidades Sobre Algoritmos
Unidad Iii Generalidades Sobre Algoritmos
 

Similar a Fundamentos de p (20)

Algoritmos de victor gelvez
Algoritmos de victor gelvezAlgoritmos de victor gelvez
Algoritmos de victor gelvez
 
Algoritmos de victor gelvez
Algoritmos de victor gelvezAlgoritmos de victor gelvez
Algoritmos de victor gelvez
 
Bloque 1 guia informatica II
Bloque 1 guia informatica IIBloque 1 guia informatica II
Bloque 1 guia informatica II
 
Algoritmos y programas
Algoritmos y programasAlgoritmos y programas
Algoritmos y programas
 
Programación EN INFORMATICA 3-4
Programación EN INFORMATICA 3-4Programación EN INFORMATICA 3-4
Programación EN INFORMATICA 3-4
 
Infoalgoritmo
InfoalgoritmoInfoalgoritmo
Infoalgoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Infoalgoritmo
InfoalgoritmoInfoalgoritmo
Infoalgoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Flujogramas
FlujogramasFlujogramas
Flujogramas
 
Alg diag
Alg diag Alg diag
Alg diag
 
Rpp
RppRpp
Rpp
 
Alg diag
Alg diagAlg diag
Alg diag
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Alg diag
Alg diagAlg diag
Alg diag
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Diagrama estructurado-pseudocódigo
Diagrama estructurado-pseudocódigoDiagrama estructurado-pseudocódigo
Diagrama estructurado-pseudocódigo
 
Fundamentos de programación en diseño web
Fundamentos de programación en diseño webFundamentos de programación en diseño web
Fundamentos de programación en diseño web
 

Último

PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.ariannytrading
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 

Último (20)

PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdfVALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 

Fundamentos de p

  • 2. ■ Fundamentos de Programación es una asignatura básica que permite crear programas que exhiban un comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal.
  • 3. ■ Se llama Programación a la implementación de un algoritmo en un determinado lenguaje de programación, para realizar un programa. ■ Algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema. ■ Programa (Software en inglés) es una secuencia de instrucciones que una computadora puede interpretar y ejecutar. ■ El proceso de creación de software es materia de la ingeniería del software, una de las ramas propias de la Ingeniería Informática.
  • 4. Medios de expresión de un algoritmo ■ Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo,diagramas de flujo y lenguajes de programación entre otros. ■ Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. ■ Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico. ■ La descripción de un algoritmo usualmente se hace en tres niveles:
  • 5. Medios de expresión de un algoritmo ■ Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles. ■ Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución. ■ Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones.
  • 6. Representación de Algoritmos Hay distintos métodos de representar los algoritmos como: oTexto: Se usa el lenguaje común para describir el algoritmo ■ Pseudocódigo: este tipo de representación mezcla el lenguaje de programación con un idioma, ya sea español, ingles o cualquier otro, se puede definir como un lenguaje de especificación de algoritmos. Es la representación narrativa de los pasos que debe de seguir un algoritmo. Este método es mas compacto, mas fácil de escribir y mas fácil de transcribir a un lenguaje de programación que el diagrama de flujo. ■ Diagrama de flujo: son herramientas graficas para representar algoritmos. esta compuesto por símbolos, como: rectángulos rombos, cuadrados, etc., unidos por flechas, estos símbolos representan acciones y orden en como se realizan estas. Es decir, los diagramas de flujo son diagramas que emplean símbolos gráficos para representar algoritmos.
  • 7. ■ o Diagrama de Nassi-Schneiderman:También conocido como diagrama de Chapín, es un método se representación de algoritmos que combina la descripción textual con la descripción grafica, es como una combinación del Pseudocódigo con el diagrama de flujo. Por lo general todo lo que se puede representar en un diagrama de flujo se puede representar en este tipo de diagrama ■ Nivel de implementación: consiste en expresar un algoritmo mediante una maquinaria, un programa de computadora o algún objeto que realice las acciones planteadas por el algoritmo en cuestión. En general, la implementación es el objetivo de diseñar un algoritmo (pero no siempre).
  • 8. ■ Descripción Narrada Este algoritmo es caracterizado porque sigue un proceso de ejecución común y lógico, describiendo textualmente paso a paso cada una de las actividades a realizar dentro de una actividad determinada. Ejemplo 1 Algoritmo para asistir a clases: 1. Levantarse 2. Bañarse 3.Vestirse 4. Desayunar 5. Cepillarse los dientes 6. Salir de casa 7.Tomar el autobús 8. Llegar a la Inst. 9. Buscar el aula 10. Ubicarse en un asiento
  • 9. Pseudocódigo ■ El pseudocódigo (falso lenguaje, el prefijo pseudosignifica falso) es una descripción de alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintácticas propias de lenguajes de programación, como asignaciones, ciclos y condicionales, aunque no está regido por ningún estándar. Es utilizado para describir algoritmos en libros y publicaciones científicas, y como producto intermedio durante el desarrollo de un algoritmo, como los Diagramas de flujo, aunque presentan una ventaja importante sobre estos, y es que los algoritmos descritos en pseudocódigo requieren menos espacio para representar instrucciones complejas.
  • 10. ■ Así el pseudodocódigo cumple con las funciones antes mencionadas para representar algo abstracto los protocolos son los lenguajes para la programación. Ejemplo 1 Diseñar un algoritmo que lea cuatro variables y calcule e imprima su producto y suma. inicio leer (a, b, c, d) producto <-- (a * b * c * d) suma <-- (a + b + c + d) escribir (producto, suma) fin
  • 11. Diagrama de flujo ■ Son la representación gráfica de la solución algorítmica de un problema. Para diseñarlos se utilizan determinados símbolos o figuras que representan una acción dentro del procedimiento. Utilizan unos símbolos normalizados, con los pasos del algoritmo escritos en el símbolo adecuado y los símbolos unidos con flechas, denominadas líneas de flujo, que indican el orden en que los pasos deben ser ejecutados ■ Los diagramas de flujo son descripciones gráficas de algoritmos; usan símbolos conectados con flechas para indicar la secuencia de instrucciones
  • 12. ■ Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. ■ El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.
  • 13. ■ Para su elaboración se siguen ciertas reglas: ■ Se escribe de arriba hacia abajo y de izquierda a derecha ■ Siempre se usan flechas verticales u horizontales, jamás curvas ■ Evitar cruce de flujos ■ En cada paso expresar una acción concreta ■ Secuencia de flujo normal en una solución de problema ■ Tiene un inicio ■ Una lectura o entrada de datos ■ El proceso de datos ■ Una salida de información ■ Un final
  • 15. ■ VENTAJAS DE USAR FLUJOGRAMAS ■ Rápida comprensión de las relaciones ■ Análisis efectivo de las diferentes secciones del programa ■ Pueden usarse como modelos de trabajo en el diseño de nuevos programas o sistemas ■ Comunicación con el usuario ■ Documentación adecuada de los programas ■ Codificación eficaz de los programas ■ Depuración y pruebas ordenadas de programas
  • 16. DESVENTAJAS DE LOS FLUJOGRAMAS ■ Diagramas complejos y detallados suelen ser laboriosos en su planteamiento y diseño ■ Acciones a seguir tras la salida de un símbolo de decisión, pueden ser difíciles de seguir si existen diferentes caminos ■ No existen normas fijas para la elaboración de los diagramas de flujo que permitan incluir todos los detalles que el usuario desee introducir.
  • 17. ■ Implementación ■ Muchos algoritmos son ideados para implementarse en un programa. Sin embargo, los algoritmos pueden ser implementados en otros medios, como una red neuronal, un circuito eléctrico o un aparato mecánico y eléctrico. Algunos algoritmos inclusive se diseñan especialmente para implementarse usando lápiz y papel
  • 18. Ejemplos ■ Mostrar el resultado del área de un triángulo en pantalla.
  • 19. ■ Indicar si el número es par o impar: La palabra mod significa dividir, por lo tanto mod 2 es dividir entre 2. Como ya debes saber si divido un número entre 2 y el resto es 0 el número es par, en caso contrario sería impar. Bien pues hay esta la decisión. ¿Al dividirlo entre 2 el resto es 0? Hay 2 posibilidades. Si lo es, se ve en pantalla "Si es par", si no lo es, se ve en pantalla "No es par". Eso es la toma de decisiones.Toma una salida en función del resultado de la entrada.
  • 20. ■ Tenemos que hacer un diagrama de flujo para mostrar la suma de los 50 primeros números.
  • 21. Lo primero es poner a cero la suma y dar el primer número a sumar que será el 0. Fíjate que el diagrama acaba cuando N, que es el número en cada momento, es 50. Mientras no sea 50 el programa vuelve a la tercera secuencia que será sumarle un número al anterior N = N + 1. Intenta comprenderlo y ver lo que hace. Puedes realizar mentalmente el diagrama para el número 0 y verás como lo acabas entendiendo.
  • 22. Ejercicios 1. Desarrolle un algoritmo que realice la sumatoria de los números enteros comprendidos entre el 1 y el 10, es decir, 1+2+3+….+10. 2. Determinar la hipotenusa de un triangulo rectángulo conocidas las longitudes de sus dos catetos. Desarrolle el algoritmo correspondiente. 3. Desarrolle un algoritmo que permita determinar el área y volumen de un cilindro dado su radio (R) y altura (H). 4. Desarrolle un algoritmo que permita leer dos números y ordenarlos de menor a mayor, si es el caso 5. Desarrolle un algoritmo que permita calcular Promedio de Notas 6. Convertir calificaciones numéricas (0 al 10) a calificaciones de “Aprobado” ó “Reprobado”, siendo 7.0 la calificación mínima aprobatoria.
  • 23. ■ Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B y C respectivamente. El algoritmo debe imprimir cual es el mayor y cual es el menor. Recuerde constatar que los tres valores introducidos por el teclado sean valores distintos. Presente un mensaje de alerta en caso de que se detecte la introducción de valores iguales.