SlideShare una empresa de Scribd logo
1 de 32
Descargar para leer sin conexión
FUNDAMENTOS
DE ALGORITMOS

Ing. Dulce Mónica Castillo
Corona
5.1. COMPUTABILIDAD Y CONCEPTO DE
ALGORITMO : MAQUINA DE TURING
Existieron varios intentos de formalizar la noción de procedimiento efectivo, pero
el primero en ser aceptado se llevó a cabo por Alan Turing en los años 30, dando
como resultado la máquina de Turing; la importancia de este trabajo, radica en
que es el primer análisis general para comprender como es que se realiza un
cálculo, y condujo a una abstracción convincente y ampliamente aceptada del
concepto de procedimiento efectivo.
Es importante mencionar que el análisis de Turing fue hecho antes de la
invención de las calculadoras de escritorio y que sus resultados condujeron más
o menos de forma directa a la invención de la computadora digital de John
von Neumann en los años 40, una máquina que básicamente tiene la misma
arquitectura que las computadoras actuales.
Además, es importante notar que para Turing una “computadora” es una
persona que resuelve un problema computacional en una forma mecánica y no
se refiere a una máquina.
5.1. COMPUTABILIDAD Y
CONCEPTO DE ALGORITMO :
MAQUINA DE TURING
5.1. COMPUTABILIDAD Y CONCEPTO DE
ALGORITMO : MAQUINA DE TURING
Una máquina de Turing consiste de una cabeza de
lectura/escritura y una cinta infinita dividida en
cuadros como lo muestra la figura. Cada celda de la
cinta puede estar en blanco o tener almacenado un
símbolo de un alfabeto finito de símbolos. La cinta
puede estar inicialmente vacía (todas las celdas en
blanco), o tener un número finito de celdas que
contienen algún símbolo. En cualquier momento, la
cabeza puede leer el contenido de la celda y
posteriormente borrar el símbolo, dejarlo igual ó
sustituirlo con algún otro símbolo. Después, la
cabeza puede moverse una posición a la derecha,
una posición a la izquierda ó quedarse en la misma
posición. Si la celda se encuentra vacía, la cabeza
puede dejarla vacía o grabar algún símbolo.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS
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.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS

 Un algoritmo es una lista bien definida, ordenada y
finita de operaciones que permite hallar la solución a
un problema.

 Dado un estado inicial y una entrada, a través de
pasos sucesivos y bien definidos se llega a un estado
final, obteniendo una solución.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS
Etapas o pasos para la creación de un programa

1.Definición del problema. La cual deberá ser clara y precisa.
2.Análisis del problema:
a)
b)
c)

Inf. que se necesita para obtener el resultado seseado (datos de entrada).
Inf. que se desea producir (datos de salida).

Métodos y fórmulas para procesar datos y producir esa salida.

3.Diseño y técnicas para la formulación de un algoritmo.
Se centra en desarrollar el algoritmo basándonos en las
especificaciones de la etapa del análisis y esto lo haremos mediante
un diagrama de flujo o un pseudocódigo.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS

4. Codificación. Se transcribe el algoritmo definido en la etapa
de diseño e algún lenguaje de programación al cual se le conoce
como código fuente.

5. Prueba y depuración. Consiste en capturar datos hasta que
el programa funcione correctamente. A la actividad de localizar
errores se le llama depuración . Existen dos tipos de sintaxis de
y de lógica.

a)

Sintaxis: es la prueba más sencilla y la realiza el compilador del
programa cada vez que se ejecuta el programa hasta que el código no
presente errores , es decir que la sintaxis que requiere el lenguaje sea la
correcta.

b)

Prueba lógica: Es la más complicada por que esta la realiza e
programador; consiste en la captura de diferentes valores y revisar que el
resultado sea el deseado.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS

6. Documentación. Es la guía o comunicación que
permite al programador o al usuario conocer la
funcionalidad del programa:

a)

Interna: Se genera con el mismo código y generalmente es mediante
comentarios.

b)

Externa: Son los manuales es independiente del programa. También
puede ser la ayuda en el mismo sw.

7. Mantenimiento. En algunas ocasiones será necesario
realizarle al programa ciertas modificaciones o ajustes para que siga
funcionando perfectamente.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS
Reglas de los algoritmos:

› Preciso: implica el orden de realización de cada uno de los pasos
› Definido: si se sigue dos veces, se obtiene el mismo resultado.
› Finito: Tiene un numero determinado de pasos, implica que tiene un
fin

› Correcto.

› Debe tener al menos una salida.
› Debe ser sencillo y legible.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS
La solución de un problema complejo puede requerir muchos
pasos, es necesario dividir el problema en sub problemas más
sencillos de resolver.
• Este método se denomina divide y vencerás y es aplicable a la resolución y
escritura de algoritmos y programas para computadora.
• Este método de división de un problema en otros sub problemas más
sencillos se puede expresar para conseguir su solución en una computadora,
mediante el método denominado diseño descendente.
• El proceso de la rotura de un problema principal en etapas o
subproblemas más sencillos se denomina refinamiento paso a
paso o sucesivos.
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS
Problema del
cálculo
Del área del
rectángulo

Entrada
de
Datos

Entrad
a altura

Entrad
a base

Calculo
del area

Area =
base x
altura

Salida del
resultado

Salida
Altura

Salida
Base

Salida
Area
5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS

 TIPOS DE ALGORITMOS

 Cualitativos.
Son aquellos en los que se describen los pasos
utilizando palabras.
Ejemplos:
La elaboración de un a receta
Búsqueda de un número telefónico
El cambio de una llanta




5.2. ELEMENTOS DE LOS
ALGORITMOS Y TIPOS DE DATOS

Cuantitativos

Son aquellos en los que se utilizan cálculos numéricos para
definir los pasos del proceso.
Ejemplos:

›
›

›

Pasos a seguir para resolver una ecuación de segundo grado.
Pasos a seguir para calcular los sueldos de los empleados de
una empresa.

Instrucciones para calcular los impuestos a pagar de los
vecinos de un municipio.
5.3. REPRESENTACIÓN DE LOS
ALGORITMOS (DIAGRAMA DE FLUJO Y
PSEUDOCÓDIGO)

Pseudocódigo
Es la combinación del lenguaje natural, símbolos, términos utilizados
dentro de la programación.
Algoritmo para calcular el área de un triángulo

1. Inicio.
2. Solicitar y leer los datos (base y altura)
3. A=(bxh)/2
4. Mostrar A
5. Fin
5.3. REPRESENTACIÓN DE LOS
ALGORITMOS (DIAGRAMA DE FLUJO Y
PSEUDOCÓDIGO)
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Definir si un numero es positivo o negativo

1.Inicio
2.escribir "introduce un número: "
3. leer número
4. si número >= 0 entonces
5. escribir "es positivo"
6. sino
7. escribir "es negativo"
8. fin si
9.fin
5.3. REPRESENTACIÓN DE LOS
ALGORITMOS (DIAGRAMA DE FLUJO Y
PSEUDOCÓDIGO)

1.Inicio

2.ESCRIBIR "Introduce un número: "
3. LEER numero
4. SI (numero mod 2=0) ENTONCES
5. ESCRIBIR "es par"
6. SINO
7. ESCRIBIR "es impar"
8. FIN SI
9.FIN PROGRAMA
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)

Diagramas de flujo
Los diagramas de flujo son una manera de representar
visualmente el flujo de datos a través de sistemas de
tratamiento de información. Los diagramas de flujo
describen que operaciones y en que secuencia se
requieren para solucionar un problema dado.
5.3. REPRESENTACIÓN DE LOS
ALGORITMOS (DIAGRAMA DE FLUJO Y
PSEUDOCÓDIGO)
›Todo diagrama debe tener un inicio y un
fin.
Se deben se usar solamente líneas de flujo
horizontales y/o verticales.
›Se debe evitar el cruce de líneas utilizando
los conectores.
Se deben usar conectores solo cuando sea
necesario.
No deben quedar líneas de flujo sin
conectar.
›Se deben trazar los símbolos de manera que
se puedan leer de arriba hacia abajo y de

›
›
›
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)

›Todo texto escrito dentro de un símbolo

deberá ser escrito claramente, evitando el
uso de muchas palabras.
Evitar la terminología de un lenguaje de
programación o máquina.
Utilizar comentarios ya sea al margen o
mediante el símbolo grafico comentarios
para que este sea entendible por cualquier
persona que lo consulte.
Si el diagrama abarca mas de una hoja es
conveniente enumerarlo e identificar de
donde viene y a donde se dirige.

›
›
›
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Diagrama de flujo para
obtención del área del
triángulo
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Diagrama de flujo para
obtención del mayor de dos
números
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Números pares o impares

1.Inicio
2.ESCRIBIR "Introduce un número: "
3. LEER numero
4. SI (x mod 2=0) ENTONCES
5. ESCRIBIR "es par"
6. SINO
7. ESCRIBIR "es impar"
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Area del circlo y volumen con el
mismo radio

1.Inicio
2.cte pi 3.1416
3.Principal ()
4.Inicio
5.real r, area, vol
6.Imprimir “area y volumen de un esfera en
cm”

7.Imprime “Dame el radio”
8.Leer radio
9.area = pi *r*r
10.Imprimir “Area del circulo es =”, area
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Imprimir si la persona es niño, adolescente, adulto o anciano.

a)0 a 12 es niño
b)13 a 17 es adolescente
c)18 a 80 es adulto
d)Mayor a 80 es anciano
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Inicio
Entero edad
imprimir “Dame tu edad”
leer edad
Si (edad<=12)
imprimir “niño”
Si no
si (edad<=17)
imprimir “adolescente”

Si no
si (edad<=80)
imprimir “adulto”
Si no
5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)


5.3. REPRESENTACIÓN DE LOS ALGORITMOS
(DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
Mostrar los primeros 10 números positivos
Inicio

Entero i
i=1
Mientras (i<=10)

Inicio
Imprimir i
i=i+1

Fin
Fin

Más contenido relacionado

La actualidad más candente

Introduccion a Algoritmos
Introduccion a AlgoritmosIntroduccion a Algoritmos
Introduccion a Algoritmossmog2010
 
Introduccion a los algoritmos parte 1
Introduccion a los algoritmos parte    1Introduccion a los algoritmos parte    1
Introduccion a los algoritmos parte 1charnisch
 
Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)Karlos Valladares
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacionMichele André
 
Introducción a los algoritmos y programación 1
Introducción a los algoritmos y programación   1Introducción a los algoritmos y programación   1
Introducción a los algoritmos y programación 1Jeckson Loza
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónIng Cabrera
 
Logica de programacion de algoritmos
Logica de programacion de algoritmosLogica de programacion de algoritmos
Logica de programacion de algoritmosDavid Ramos
 
Fundamentos de algoritmia
Fundamentos de algoritmiaFundamentos de algoritmia
Fundamentos de algoritmiaNilson Negrete
 
Descripción de un Algoritmo
Descripción de un AlgoritmoDescripción de un Algoritmo
Descripción de un AlgoritmoOGEA UPS
 
Algoritmos y Logica
Algoritmos y LogicaAlgoritmos y Logica
Algoritmos y LogicaDSGP
 
Introducción a algoritmos
Introducción a algoritmosIntroducción a algoritmos
Introducción a algoritmosUlises Cruz
 
Conceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje deConceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje de'Felipe Lozada
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1Silvanac
 
U7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSU7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSLuiS YmAY
 
Generalidades Sobre Algoritmos(Ok)
Generalidades Sobre Algoritmos(Ok)Generalidades Sobre Algoritmos(Ok)
Generalidades Sobre Algoritmos(Ok)Melki Carpio
 
Algoritmos y diagramacion clase 1
Algoritmos y diagramacion clase 1Algoritmos y diagramacion clase 1
Algoritmos y diagramacion clase 1Yamid Navea
 

La actualidad más candente (20)

Introduccion a Algoritmos
Introduccion a AlgoritmosIntroduccion a Algoritmos
Introduccion a Algoritmos
 
Clase de programacion
Clase  de  programacionClase  de  programacion
Clase de programacion
 
Introduccion a los algoritmos parte 1
Introduccion a los algoritmos parte    1Introduccion a los algoritmos parte    1
Introduccion a los algoritmos parte 1
 
Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)Fundamentos básicos de algoritmos (1)
Fundamentos básicos de algoritmos (1)
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacion
 
Introducción a los algoritmos y programación 1
Introducción a los algoritmos y programación   1Introducción a los algoritmos y programación   1
Introducción a los algoritmos y programación 1
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Logica de programacion de algoritmos
Logica de programacion de algoritmosLogica de programacion de algoritmos
Logica de programacion de algoritmos
 
Fundamentos de algoritmia
Fundamentos de algoritmiaFundamentos de algoritmia
Fundamentos de algoritmia
 
Descripción de un Algoritmo
Descripción de un AlgoritmoDescripción de un Algoritmo
Descripción de un Algoritmo
 
Algoritmos y Logica
Algoritmos y LogicaAlgoritmos y Logica
Algoritmos y Logica
 
Algoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujoAlgoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujo
 
Introducción a algoritmos
Introducción a algoritmosIntroducción a algoritmos
Introducción a algoritmos
 
Conceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje deConceptos de algoritmo, programa y lenguaje de
Conceptos de algoritmo, programa y lenguaje de
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1
 
Unidad ii construiralgoritmos
Unidad ii construiralgoritmosUnidad ii construiralgoritmos
Unidad ii construiralgoritmos
 
U7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSU7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOS
 
Generalidades Sobre Algoritmos(Ok)
Generalidades Sobre Algoritmos(Ok)Generalidades Sobre Algoritmos(Ok)
Generalidades Sobre Algoritmos(Ok)
 
Algoritmos y diagramacion clase 1
Algoritmos y diagramacion clase 1Algoritmos y diagramacion clase 1
Algoritmos y diagramacion clase 1
 

Destacado (9)

2 ex parcial_b_gpo1115
2 ex parcial_b_gpo11152 ex parcial_b_gpo1115
2 ex parcial_b_gpo1115
 
Serie pseint
Serie pseintSerie pseint
Serie pseint
 
T1
T1T1
T1
 
Tema 5 3
Tema 5 3Tema 5 3
Tema 5 3
 
T1
T1T1
T1
 
T3
T3T3
T3
 
T2
T2T2
T2
 
Estructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeIntEstructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeInt
 
Estructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoEstructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigo
 

Similar a Tema 5 1

Algoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoAlgoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoClariza
 
Evaluacion de algoritmo
Evaluacion de algoritmoEvaluacion de algoritmo
Evaluacion de algoritmoSergioERondon
 
presentacionalgoritmos-111003021701-phpapp01.pdf
presentacionalgoritmos-111003021701-phpapp01.pdfpresentacionalgoritmos-111003021701-phpapp01.pdf
presentacionalgoritmos-111003021701-phpapp01.pdfMariselaBardales1
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoLeidiCaro1
 
Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmoNombre Apellidos
 
Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1Alma Lopez
 
1 conceptos algoritmos
1 conceptos algoritmos1 conceptos algoritmos
1 conceptos algoritmosLeidy Campos
 
Introduccion A La Programacion
Introduccion A La ProgramacionIntroduccion A La Programacion
Introduccion A La ProgramacionMary Sanchez
 
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
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programazeta2015
 
Algoritmos libro 6
Algoritmos  libro 6Algoritmos  libro 6
Algoritmos libro 6desi2907
 

Similar a Tema 5 1 (20)

Algoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoAlgoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujo
 
Programación
ProgramaciónProgramación
Programación
 
Tema n° 1
Tema n° 1Tema n° 1
Tema n° 1
 
Evaluacion de algoritmo
Evaluacion de algoritmoEvaluacion de algoritmo
Evaluacion de algoritmo
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
presentacionalgoritmos-111003021701-phpapp01.pdf
presentacionalgoritmos-111003021701-phpapp01.pdfpresentacionalgoritmos-111003021701-phpapp01.pdf
presentacionalgoritmos-111003021701-phpapp01.pdf
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Programación u1
Programación   u1Programación   u1
Programación u1
 
Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmo
 
Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1Clase2 algoritmos formas-representacionalgoritmicas1
Clase2 algoritmos formas-representacionalgoritmicas1
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
1 conceptos algoritmos
1 conceptos algoritmos1 conceptos algoritmos
1 conceptos algoritmos
 
Introduccion A La Programacion
Introduccion A La ProgramacionIntroduccion A La Programacion
Introduccion A La Programacion
 
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
 
TEMA11.ppt
TEMA11.pptTEMA11.ppt
TEMA11.ppt
 
Los algoritmos
Los    algoritmosLos    algoritmos
Los algoritmos
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programa
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos libro 6
Algoritmos  libro 6Algoritmos  libro 6
Algoritmos libro 6
 

Más de Monica Castillo (20)

2 ex parcial_a_gpo1115
2 ex parcial_a_gpo11152 ex parcial_a_gpo1115
2 ex parcial_a_gpo1115
 
2 ex parcial_b_respuestas
2 ex parcial_b_respuestas2 ex parcial_b_respuestas
2 ex parcial_b_respuestas
 
2 ex parcial_a_respuestas
2 ex parcial_a_respuestas2 ex parcial_a_respuestas
2 ex parcial_a_respuestas
 
Serie algoritmos
Serie algoritmosSerie algoritmos
Serie algoritmos
 
T4 1
T4 1T4 1
T4 1
 
Linux esquema
Linux esquemaLinux esquema
Linux esquema
 
Linux practica 4
Linux practica 4Linux practica 4
Linux practica 4
 
T3
T3T3
T3
 
P no 2
P no 2P no 2
P no 2
 
T2
T2T2
T2
 
P no 1
P no 1P no 1
P no 1
 
Arreglos
ArreglosArreglos
Arreglos
 
Práctica no3
Práctica no3Práctica no3
Práctica no3
 
Práctica 10
Práctica 10Práctica 10
Práctica 10
 
T4
T4T4
T4
 
Practica linux
Practica linuxPractica linux
Practica linux
 
Tema 3 software operativo y de desarrollo
Tema 3 software operativo y de desarrolloTema 3 software operativo y de desarrollo
Tema 3 software operativo y de desarrollo
 
Practica 13
Practica 13Practica 13
Practica 13
 
Práctica 12
Práctica 12Práctica 12
Práctica 12
 
Práctica no 11
Práctica no 11Práctica no 11
Práctica no 11
 

Último

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 

Último (19)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 

Tema 5 1

  • 1. FUNDAMENTOS DE ALGORITMOS Ing. Dulce Mónica Castillo Corona
  • 2. 5.1. COMPUTABILIDAD Y CONCEPTO DE ALGORITMO : MAQUINA DE TURING Existieron varios intentos de formalizar la noción de procedimiento efectivo, pero el primero en ser aceptado se llevó a cabo por Alan Turing en los años 30, dando como resultado la máquina de Turing; la importancia de este trabajo, radica en que es el primer análisis general para comprender como es que se realiza un cálculo, y condujo a una abstracción convincente y ampliamente aceptada del concepto de procedimiento efectivo. Es importante mencionar que el análisis de Turing fue hecho antes de la invención de las calculadoras de escritorio y que sus resultados condujeron más o menos de forma directa a la invención de la computadora digital de John von Neumann en los años 40, una máquina que básicamente tiene la misma arquitectura que las computadoras actuales. Además, es importante notar que para Turing una “computadora” es una persona que resuelve un problema computacional en una forma mecánica y no se refiere a una máquina.
  • 3. 5.1. COMPUTABILIDAD Y CONCEPTO DE ALGORITMO : MAQUINA DE TURING
  • 4. 5.1. COMPUTABILIDAD Y CONCEPTO DE ALGORITMO : MAQUINA DE TURING Una máquina de Turing consiste de una cabeza de lectura/escritura y una cinta infinita dividida en cuadros como lo muestra la figura. Cada celda de la cinta puede estar en blanco o tener almacenado un símbolo de un alfabeto finito de símbolos. La cinta puede estar inicialmente vacía (todas las celdas en blanco), o tener un número finito de celdas que contienen algún símbolo. En cualquier momento, la cabeza puede leer el contenido de la celda y posteriormente borrar el símbolo, dejarlo igual ó sustituirlo con algún otro símbolo. Después, la cabeza puede moverse una posición a la derecha, una posición a la izquierda ó quedarse en la misma posición. Si la celda se encuentra vacía, la cabeza puede dejarla vacía o grabar algún símbolo.
  • 5. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS 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.
  • 6. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS  Un algoritmo es una lista bien definida, ordenada y finita de operaciones que permite hallar la solución a un problema.  Dado un estado inicial y una entrada, a través de pasos sucesivos y bien definidos se llega a un estado final, obteniendo una solución.
  • 7. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS Etapas o pasos para la creación de un programa 1.Definición del problema. La cual deberá ser clara y precisa. 2.Análisis del problema: a) b) c) Inf. que se necesita para obtener el resultado seseado (datos de entrada). Inf. que se desea producir (datos de salida). Métodos y fórmulas para procesar datos y producir esa salida. 3.Diseño y técnicas para la formulación de un algoritmo. Se centra en desarrollar el algoritmo basándonos en las especificaciones de la etapa del análisis y esto lo haremos mediante un diagrama de flujo o un pseudocódigo.
  • 8. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS 4. Codificación. Se transcribe el algoritmo definido en la etapa de diseño e algún lenguaje de programación al cual se le conoce como código fuente. 5. Prueba y depuración. Consiste en capturar datos hasta que el programa funcione correctamente. A la actividad de localizar errores se le llama depuración . Existen dos tipos de sintaxis de y de lógica. a) Sintaxis: es la prueba más sencilla y la realiza el compilador del programa cada vez que se ejecuta el programa hasta que el código no presente errores , es decir que la sintaxis que requiere el lenguaje sea la correcta. b) Prueba lógica: Es la más complicada por que esta la realiza e programador; consiste en la captura de diferentes valores y revisar que el resultado sea el deseado.
  • 9. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS 6. Documentación. Es la guía o comunicación que permite al programador o al usuario conocer la funcionalidad del programa: a) Interna: Se genera con el mismo código y generalmente es mediante comentarios. b) Externa: Son los manuales es independiente del programa. También puede ser la ayuda en el mismo sw. 7. Mantenimiento. En algunas ocasiones será necesario realizarle al programa ciertas modificaciones o ajustes para que siga funcionando perfectamente.
  • 10. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS Reglas de los algoritmos: › Preciso: implica el orden de realización de cada uno de los pasos › Definido: si se sigue dos veces, se obtiene el mismo resultado. › Finito: Tiene un numero determinado de pasos, implica que tiene un fin › Correcto. › Debe tener al menos una salida. › Debe ser sencillo y legible.
  • 11. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS La solución de un problema complejo puede requerir muchos pasos, es necesario dividir el problema en sub problemas más sencillos de resolver. • Este método se denomina divide y vencerás y es aplicable a la resolución y escritura de algoritmos y programas para computadora. • Este método de división de un problema en otros sub problemas más sencillos se puede expresar para conseguir su solución en una computadora, mediante el método denominado diseño descendente. • El proceso de la rotura de un problema principal en etapas o subproblemas más sencillos se denomina refinamiento paso a paso o sucesivos.
  • 12. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS Problema del cálculo Del área del rectángulo Entrada de Datos Entrad a altura Entrad a base Calculo del area Area = base x altura Salida del resultado Salida Altura Salida Base Salida Area
  • 13. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS  TIPOS DE ALGORITMOS  Cualitativos. Son aquellos en los que se describen los pasos utilizando palabras. Ejemplos: La elaboración de un a receta Búsqueda de un número telefónico El cambio de una llanta   
  • 14. 5.2. ELEMENTOS DE LOS ALGORITMOS Y TIPOS DE DATOS Cuantitativos Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso. Ejemplos: › › › Pasos a seguir para resolver una ecuación de segundo grado. Pasos a seguir para calcular los sueldos de los empleados de una empresa. Instrucciones para calcular los impuestos a pagar de los vecinos de un municipio.
  • 15. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Pseudocódigo Es la combinación del lenguaje natural, símbolos, términos utilizados dentro de la programación. Algoritmo para calcular el área de un triángulo 1. Inicio. 2. Solicitar y leer los datos (base y altura) 3. A=(bxh)/2 4. Mostrar A 5. Fin
  • 16. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
  • 17. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Definir si un numero es positivo o negativo 1.Inicio 2.escribir "introduce un número: " 3. leer número 4. si número >= 0 entonces 5. escribir "es positivo" 6. sino 7. escribir "es negativo" 8. fin si 9.fin
  • 18. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) 1.Inicio 2.ESCRIBIR "Introduce un número: " 3. LEER numero 4. SI (numero mod 2=0) ENTONCES 5. ESCRIBIR "es par" 6. SINO 7. ESCRIBIR "es impar" 8. FIN SI 9.FIN PROGRAMA
  • 19. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Diagramas de flujo Los diagramas de flujo son una manera de representar visualmente el flujo de datos a través de sistemas de tratamiento de información. Los diagramas de flujo describen que operaciones y en que secuencia se requieren para solucionar un problema dado.
  • 20. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) ›Todo diagrama debe tener un inicio y un fin. Se deben se usar solamente líneas de flujo horizontales y/o verticales. ›Se debe evitar el cruce de líneas utilizando los conectores. Se deben usar conectores solo cuando sea necesario. No deben quedar líneas de flujo sin conectar. ›Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de › › ›
  • 21. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) ›Todo texto escrito dentro de un símbolo deberá ser escrito claramente, evitando el uso de muchas palabras. Evitar la terminología de un lenguaje de programación o máquina. Utilizar comentarios ya sea al margen o mediante el símbolo grafico comentarios para que este sea entendible por cualquier persona que lo consulte. Si el diagrama abarca mas de una hoja es conveniente enumerarlo e identificar de donde viene y a donde se dirige. › › ›
  • 22.
  • 23. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Diagrama de flujo para obtención del área del triángulo
  • 24. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
  • 25. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
  • 26. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Diagrama de flujo para obtención del mayor de dos números
  • 27. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Números pares o impares 1.Inicio 2.ESCRIBIR "Introduce un número: " 3. LEER numero 4. SI (x mod 2=0) ENTONCES 5. ESCRIBIR "es par" 6. SINO 7. ESCRIBIR "es impar"
  • 28. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Area del circlo y volumen con el mismo radio 1.Inicio 2.cte pi 3.1416 3.Principal () 4.Inicio 5.real r, area, vol 6.Imprimir “area y volumen de un esfera en cm” 7.Imprime “Dame el radio” 8.Leer radio 9.area = pi *r*r 10.Imprimir “Area del circulo es =”, area
  • 29. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Imprimir si la persona es niño, adolescente, adulto o anciano. a)0 a 12 es niño b)13 a 17 es adolescente c)18 a 80 es adulto d)Mayor a 80 es anciano
  • 30. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Inicio Entero edad imprimir “Dame tu edad” leer edad Si (edad<=12) imprimir “niño” Si no si (edad<=17) imprimir “adolescente” Si no si (edad<=80) imprimir “adulto” Si no
  • 31. 5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO)
  • 32.  5.3. REPRESENTACIÓN DE LOS ALGORITMOS (DIAGRAMA DE FLUJO Y PSEUDOCÓDIGO) Mostrar los primeros 10 números positivos Inicio Entero i i=1 Mientras (i<=10) Inicio Imprimir i i=i+1 Fin Fin