SlideShare una empresa de Scribd logo
1 de 30
ALGORITMOS,
ESPECIFICACION Y
PSEUDOCODIGO
EL ALGORITMO EN LA
RESOLUCION DE
PROBLEMAS DE
INFORMACION
ESTRUCTURAS
DE ALGORITMOS
1 2
3
¿Qué son los algoritmos?
Un algoritmo es una serie de pasos o
instrucciones que se siguen para
resolver un problema o llevar a cabo
una tarea. En programación, los
algoritmos son importantes porque
permiten que las computadoras realicen
tareas de manera eficiente y precisa.
Permiten dar solución a casos cotidianos en
donde no es necesario utilizar operaciones
matemáticas para llegar a dicha solución.
Es necesario recurrir a las matemáticas para dar
solución a dichos casos
Algoritmo para cambiar la rueda pinchada de un automóvil
INICIO
Paso 1. Aflojar los tornillos dela rueda pinchada con la llave
inglesa.
Paso 2. Ubicar el gato mecánico en su sitio.
Paso 3. Levantar el gato hasta que la rueda pinchada pueda
girar libremente.
Paso 4. Quitar los tornillos y la rueda pinchada.
Paso 5. Poner rueda de repuesto y los tornillos.
Paso 6. Bajar el gato hasta que se pueda liberar.
Paso 7. Sacar el gato de su sitio.
Paso 8. Apretar los tornillos con la llave inglesa.
FIN
Algoritmo para calcular el área de un triángulo.
• Área del triángulo “x”.
• Base del triángulo “b”.
• Altura del triángulo “h”.
• A ← b*h/2
Algoritmo
1.- INICIO.
2.- Suministrar cifra de altura “h”.
3.- Suministrar cifra de base“b”.
4.- Multiplicar las cifras de base y altura.
5.- Dividir el resultado de la multiplicación entre
2.
6.- Generar resultado..
Debe brindar el orden de los pasos que se
deben realizar para poder llegar al resultado
final
Se refiere a que todo problema que se resuelva
a través de un algoritmo tiene un principio y un
fin.
Si se sigue un algoritmo varias veces debe arrojar
el mismo resultado
El pseudocódigo es una forma de expresar
los distintos pasos que va a realizar un
programa, de la forma más parecida a un
lenguaje de programación. Su principal
función es la de representar por pasos la
solución a un problema o algoritmo, de la
forma más detallada posible, utilizando un
lenguaje cercano al de programación.
El diagrama de flujo o también diagrama de
actividades es una manera de representar gráficamente
un algoritmo o un proceso de alguna naturaleza, a
través de una serie de pasos estructurados y vinculados
que permiten su revisión como un todo.
La representación gráfica de estos procesos emplea, en
los diagramas de flujo, una serie determinada de figuras
geométricas que representan cada paso puntual del
proceso que está siendo evaluado.
En las ciencias de la computación se ocupa de los problemas computables.
Se le llama problema computable a aquella abstracción de la realidad que tiene
representación algorítmica.
Los algoritmos permiten encontrar la solución a problemas computables.
Intuitivamente las personas efectuamos cotidianamente una serie de pasos,
procedimientos o acciones que nos permitan alcanzar algún resultado o resolver un
problema (al bañarnos, al desayunar, al ir a la universidad). En realidad todo el tiempo
estamos aplicando algoritmos para resolver problemas.
Los programas son conjuntos de instrucciones escritas en lenguajes de programación para resolver
problemas o realizar tareas. Las aplicaciones son programas diseñados para cumplir una función
específica en un dispositivo o sistema. El desarrollo de soluciones de problemas de algoritmos implica
el proceso de diseñar, implementar y optimizar algoritmos para resolver problemas específicos.
1.Editores de código: Estos programas proporcionan un entorno
para escribir y editar código fuente. Ejemplos populares incluyen
Visual Studio Code, Sublime Text y Atom. Permiten resaltar la
sintaxis, autocompletar código y ofrecen herramientas para el
desarrollo ágil.
2.Compiladores e intérpretes: Los compiladores traducen el código
fuente a un lenguaje de bajo nivel ejecutable, mientras que los
intérpretes ejecutan el código línea por línea en tiempo real. Algunos
ejemplos son GCC (compilador de C), Python (intérprete) y Java
(compilador e intérprete).
3.Entornos de desarrollo integrados (IDE): Estas aplicaciones
integran editores de código, compiladores y herramientas de
depuración en una sola interfaz. Ejemplos populares son Eclipse,
IntelliJ IDEA y Xcode. Proporcionan características adicionales
como refactoring, pruebas unitarias y control de versiones.
4.Frameworks y bibliotecas: Los frameworks como Django
(Python) o React (JavaScript) ofrecen estructuras predefinidas y
herramientas para simplificar el desarrollo de aplicaciones. Las
bibliotecas, como NumPy (Python) o jQuery (JavaScript),
proporcionan funciones y utilidades adicionales para resolver
problemas específicos.
5.Plataformas de desarrollo en la nube: Estas plataformas, como
AWS, Google Cloud o Microsoft Azure, ofrecen servicios y
herramientas para desarrollar, implementar y escalar aplicaciones
La estrategia de resolución de problemas de manera ascendente en algoritmos implica
descomponer el problema en subproblemas más pequeños y resolverlos gradualmente.
1.Divide el problema en subproblemas más pequeños y manejables.
2.Resuelve cada subproblema de manera independiente.
3.Combina las soluciones de los subproblemas para obtener la solución final del problema
completo.
4.Asegúrate de que la solución de cada subproblema sea correcta y eficiente.
5.Verifica que la combinación de las soluciones de los subproblemas cumpla con los
requisitos del problema completo.
6.Realiza ajustes o mejoras en las soluciones de los subproblemas si es necesario.
7.Repite los pasos anteriores hasta resolver el problema completo.
 Identifica y comprende el problema: Analiza y entiende completamente el problema que deseas
resolver.
 Planifica y diseña una solución: Piensa en una estrategia o enfoque para resolver el problema.
Decide qué algoritmo o estructura de datos es adecuada para resolverlo de manera eficiente.
 Diseña un plan paso a paso para implementar la solución.
 Asegúrate de que el algoritmo esté bien estructurado y sea comprensible.
 Implementa el algoritmo en un programa: Escribe el código correspondiente al algoritmo en el
lenguaje de programación elegido.
 Asegúrate de seguir las mejores prácticas de programación, como el uso de variables descriptivas y
la modularización del código.
 Depura y prueba el programa: Ejecuta el programa y verifica si produce los resultados esperados.
 Optimiza y mejora el programa: Si el programa funciona correctamente, considera formas de
optimizarlo y mejorarlo.
 Documenta y organiza el código: Es importante documentar el código para que otros (o incluso tú
mismo en el futuro) puedan entenderlo fácilmente.
Metodología se define como el conjunto de acciones que se deben seguir para alcanzar
ciertos objetivos previamente teniendo algo de conocimiento sobre el tema.
En informática existen diversas metodologías para la resolución de problemas aplicando la
programación, de las fuentes consultadas se prefiere mencionar la del libro de Informática
II/Computer de Patricia Ibañez y Gerardo García que consta de los siguientes pasos:
• Identificar el problema.- En esta fase se comprende el problema y se destacan los datos
que ayudan a entender el problema.
• Sugerir (o plantear) alternativas de solución.- Apela al ingenio del desarrollador en la
propuesta de las posibles soluciones al problema.
• Diseñar el algoritmo.- El resultado de esta etapa es crear una serie de pasos que
servirán para resolver el problema planteado.
• Desarrollar la solución y comprobar los resultados.-En esta fase se comprueban los
resultados.
Las estructuras secuenciales son aquellas en las que
las instrucciones se ejecutan en orden secuencial,
es, decir, una tras otra. Esto significa que cada
instrucción se ejecuta después de la anterior
Las estructuras secuenciales son importantes
porque permiten que los programadores controlen
el flujo de un programa de manera efectiva.
POR EJEMPLO:
Un programa que lee datos de entrada, realiza
cálculos y luego muestra los resultados debe seguir
una estructura secuencial
Las estructuras condicionales son aquellas en las que el flujo
del programa depende de una o varias condiciones. Si se
cumple una condición, se ejecuta un conjunto de
instrucciones especificas.
Las estructuras condicionales son importantes porque
permiten que los programas tomen decisiones de manera
autónoma, lo que los hace más flexibles y adaptables a
diferentes situaciones.
POR EJEMPLO:
Un programa que verifica si un numero es par o impar utiliza
una estructura condicional para tomar la decisión correcta.
Las estructuras son aquellas en las que un conjunto de
instrucciones se repiten varias veces hasta que se cumple
una condición especifica.
Las estructuras cíclicas son importantes porque permiten
que los programas realicen tareas repetitivas de manera
eficiente y sin errores.
POR EJEMLO:
Un programa que imprime una tabla de multiplicar utiliza
una estructura cíclica para repetir el proceso para cada
numero
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptx

Más contenido relacionado

Similar a ALGORITMOS y ejemplo en java.pptx

Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujocasdilacol
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoLeidiCaro1
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento SebastianGomezPayan
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoSaragongoravillaquir
 
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez SanchezConcentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez SanchezManuel Gonzalez
 
presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...
presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...
presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...AliandroMejias
 
Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1Alma Lopez
 
Principios de programacion
Principios de programacionPrincipios de programacion
Principios de programacionrulo182
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadoraFaridCastillo2
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadoraJulioVizcarra5
 
Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...
Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...
Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...JovanyYGonzalezR
 
Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)
Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)
Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)Orangel4
 

Similar a ALGORITMOS y ejemplo en java.pptx (20)

Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
algoritmos
algoritmosalgoritmos
algoritmos
 
Estructuras_F_CAT
Estructuras_F_CATEstructuras_F_CAT
Estructuras_F_CAT
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Apartes De Algoritmos
Apartes De AlgoritmosApartes De Algoritmos
Apartes De Algoritmos
 
ALGORITMOS
ALGORITMOSALGORITMOS
ALGORITMOS
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Semana 1
Semana 1Semana 1
Semana 1
 
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez SanchezConcentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
 
presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...
presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...
presentacion sobre Algoritmo, Pseudocódigo, diagramas de flujos y la metodolo...
 
Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1
 
Principios de programacion
Principios de programacionPrincipios de programacion
Principios de programacion
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadora
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadora
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Tecnología período 3
Tecnología período 3Tecnología período 3
Tecnología período 3
 
Tecnología período 3
Tecnología período 3Tecnología período 3
Tecnología período 3
 
Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...
Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...
Algoritmos, Pseudocódigo, diagramas de flujos y la metodologia para resolver ...
 
Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)
Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)
Algoritmos y seudocódigos (orangel rodriguez) (30.736.401)
 

ALGORITMOS y ejemplo en java.pptx

  • 1. ALGORITMOS, ESPECIFICACION Y PSEUDOCODIGO EL ALGORITMO EN LA RESOLUCION DE PROBLEMAS DE INFORMACION ESTRUCTURAS DE ALGORITMOS 1 2 3
  • 2. ¿Qué son los algoritmos? Un algoritmo es una serie de pasos o instrucciones que se siguen para resolver un problema o llevar a cabo una tarea. En programación, los algoritmos son importantes porque permiten que las computadoras realicen tareas de manera eficiente y precisa.
  • 3. Permiten dar solución a casos cotidianos en donde no es necesario utilizar operaciones matemáticas para llegar a dicha solución. Es necesario recurrir a las matemáticas para dar solución a dichos casos
  • 4. Algoritmo para cambiar la rueda pinchada de un automóvil INICIO Paso 1. Aflojar los tornillos dela rueda pinchada con la llave inglesa. Paso 2. Ubicar el gato mecánico en su sitio. Paso 3. Levantar el gato hasta que la rueda pinchada pueda girar libremente. Paso 4. Quitar los tornillos y la rueda pinchada. Paso 5. Poner rueda de repuesto y los tornillos. Paso 6. Bajar el gato hasta que se pueda liberar. Paso 7. Sacar el gato de su sitio. Paso 8. Apretar los tornillos con la llave inglesa. FIN Algoritmo para calcular el área de un triángulo. • Área del triángulo “x”. • Base del triángulo “b”. • Altura del triángulo “h”. • A ← b*h/2 Algoritmo 1.- INICIO. 2.- Suministrar cifra de altura “h”. 3.- Suministrar cifra de base“b”. 4.- Multiplicar las cifras de base y altura. 5.- Dividir el resultado de la multiplicación entre 2. 6.- Generar resultado..
  • 5. Debe brindar el orden de los pasos que se deben realizar para poder llegar al resultado final Se refiere a que todo problema que se resuelva a través de un algoritmo tiene un principio y un fin. Si se sigue un algoritmo varias veces debe arrojar el mismo resultado
  • 6.
  • 7. El pseudocódigo es una forma de expresar los distintos pasos que va a realizar un programa, de la forma más parecida a un lenguaje de programación. Su principal función es la de representar por pasos la solución a un problema o algoritmo, de la forma más detallada posible, utilizando un lenguaje cercano al de programación.
  • 8. El diagrama de flujo o también diagrama de actividades es una manera de representar gráficamente un algoritmo o un proceso de alguna naturaleza, a través de una serie de pasos estructurados y vinculados que permiten su revisión como un todo. La representación gráfica de estos procesos emplea, en los diagramas de flujo, una serie determinada de figuras geométricas que representan cada paso puntual del proceso que está siendo evaluado.
  • 9. En las ciencias de la computación se ocupa de los problemas computables. Se le llama problema computable a aquella abstracción de la realidad que tiene representación algorítmica. Los algoritmos permiten encontrar la solución a problemas computables. Intuitivamente las personas efectuamos cotidianamente una serie de pasos, procedimientos o acciones que nos permitan alcanzar algún resultado o resolver un problema (al bañarnos, al desayunar, al ir a la universidad). En realidad todo el tiempo estamos aplicando algoritmos para resolver problemas.
  • 10.
  • 11. Los programas son conjuntos de instrucciones escritas en lenguajes de programación para resolver problemas o realizar tareas. Las aplicaciones son programas diseñados para cumplir una función específica en un dispositivo o sistema. El desarrollo de soluciones de problemas de algoritmos implica el proceso de diseñar, implementar y optimizar algoritmos para resolver problemas específicos. 1.Editores de código: Estos programas proporcionan un entorno para escribir y editar código fuente. Ejemplos populares incluyen Visual Studio Code, Sublime Text y Atom. Permiten resaltar la sintaxis, autocompletar código y ofrecen herramientas para el desarrollo ágil. 2.Compiladores e intérpretes: Los compiladores traducen el código fuente a un lenguaje de bajo nivel ejecutable, mientras que los intérpretes ejecutan el código línea por línea en tiempo real. Algunos ejemplos son GCC (compilador de C), Python (intérprete) y Java (compilador e intérprete).
  • 12. 3.Entornos de desarrollo integrados (IDE): Estas aplicaciones integran editores de código, compiladores y herramientas de depuración en una sola interfaz. Ejemplos populares son Eclipse, IntelliJ IDEA y Xcode. Proporcionan características adicionales como refactoring, pruebas unitarias y control de versiones. 4.Frameworks y bibliotecas: Los frameworks como Django (Python) o React (JavaScript) ofrecen estructuras predefinidas y herramientas para simplificar el desarrollo de aplicaciones. Las bibliotecas, como NumPy (Python) o jQuery (JavaScript), proporcionan funciones y utilidades adicionales para resolver problemas específicos. 5.Plataformas de desarrollo en la nube: Estas plataformas, como AWS, Google Cloud o Microsoft Azure, ofrecen servicios y herramientas para desarrollar, implementar y escalar aplicaciones
  • 13. La estrategia de resolución de problemas de manera ascendente en algoritmos implica descomponer el problema en subproblemas más pequeños y resolverlos gradualmente. 1.Divide el problema en subproblemas más pequeños y manejables. 2.Resuelve cada subproblema de manera independiente. 3.Combina las soluciones de los subproblemas para obtener la solución final del problema completo. 4.Asegúrate de que la solución de cada subproblema sea correcta y eficiente. 5.Verifica que la combinación de las soluciones de los subproblemas cumpla con los requisitos del problema completo. 6.Realiza ajustes o mejoras en las soluciones de los subproblemas si es necesario. 7.Repite los pasos anteriores hasta resolver el problema completo.
  • 14.  Identifica y comprende el problema: Analiza y entiende completamente el problema que deseas resolver.  Planifica y diseña una solución: Piensa en una estrategia o enfoque para resolver el problema. Decide qué algoritmo o estructura de datos es adecuada para resolverlo de manera eficiente.  Diseña un plan paso a paso para implementar la solución.  Asegúrate de que el algoritmo esté bien estructurado y sea comprensible.  Implementa el algoritmo en un programa: Escribe el código correspondiente al algoritmo en el lenguaje de programación elegido.  Asegúrate de seguir las mejores prácticas de programación, como el uso de variables descriptivas y la modularización del código.  Depura y prueba el programa: Ejecuta el programa y verifica si produce los resultados esperados.  Optimiza y mejora el programa: Si el programa funciona correctamente, considera formas de optimizarlo y mejorarlo.  Documenta y organiza el código: Es importante documentar el código para que otros (o incluso tú mismo en el futuro) puedan entenderlo fácilmente.
  • 15. Metodología se define como el conjunto de acciones que se deben seguir para alcanzar ciertos objetivos previamente teniendo algo de conocimiento sobre el tema. En informática existen diversas metodologías para la resolución de problemas aplicando la programación, de las fuentes consultadas se prefiere mencionar la del libro de Informática II/Computer de Patricia Ibañez y Gerardo García que consta de los siguientes pasos: • Identificar el problema.- En esta fase se comprende el problema y se destacan los datos que ayudan a entender el problema. • Sugerir (o plantear) alternativas de solución.- Apela al ingenio del desarrollador en la propuesta de las posibles soluciones al problema. • Diseñar el algoritmo.- El resultado de esta etapa es crear una serie de pasos que servirán para resolver el problema planteado. • Desarrollar la solución y comprobar los resultados.-En esta fase se comprueban los resultados.
  • 16.
  • 17. Las estructuras secuenciales son aquellas en las que las instrucciones se ejecutan en orden secuencial, es, decir, una tras otra. Esto significa que cada instrucción se ejecuta después de la anterior Las estructuras secuenciales son importantes porque permiten que los programadores controlen el flujo de un programa de manera efectiva. POR EJEMPLO: Un programa que lee datos de entrada, realiza cálculos y luego muestra los resultados debe seguir una estructura secuencial
  • 18. Las estructuras condicionales son aquellas en las que el flujo del programa depende de una o varias condiciones. Si se cumple una condición, se ejecuta un conjunto de instrucciones especificas. Las estructuras condicionales son importantes porque permiten que los programas tomen decisiones de manera autónoma, lo que los hace más flexibles y adaptables a diferentes situaciones. POR EJEMPLO: Un programa que verifica si un numero es par o impar utiliza una estructura condicional para tomar la decisión correcta.
  • 19. Las estructuras son aquellas en las que un conjunto de instrucciones se repiten varias veces hasta que se cumple una condición especifica. Las estructuras cíclicas son importantes porque permiten que los programas realicen tareas repetitivas de manera eficiente y sin errores. POR EJEMLO: Un programa que imprime una tabla de multiplicar utiliza una estructura cíclica para repetir el proceso para cada numero