SlideShare una empresa de Scribd logo
1 de 7
Algoritmo
Empecemos
Concepto Algoritmo
• En matemáticas, ciencias de la
computación y otras doctrinas
relacionadas, el algoritmo se define
como un conjunto de preceptos
establecidos e inequívocos,
encontrados metódicamente y de
manera limitada que permiten efectuar
cómputos, procesar ciertas
informaciones, dar soluciones a
problemas y llevar a cabo diversas
actividades. Una vez que se parte de un
estado inicial y una entrada, siguiendo
los procedimientos requeridos, se llega
al estado final y se obtiene un resultado.
Los algoritmos son el objeto de
indagación de la algoritmia y aunque
muchos no lo crean, éstos también se
pueden usar en todos los aspectos de la
vida cotidiana.
Continuemos
Características de un algoritmo
• Un algoritmo debe ser preciso:
tiene que indicar el orden de
realización de cada paso.
• Un algoritmo debe estar
definido: Si se sigue un algoritmo
dos veces, se debe obtener el
mismo resultado cada vez.
• Un algoritmo debe ser finito: el
algoritmo se debe terminar en algún
momento; o sea, debe tener un
número finito de pasos.
• Un algoritmo debe ser legible: El
texto que lo describe debe ser
claro, tal que permita entenderlo y
leerlo fácilmente.
• Un algoritmo debe definir tres
partes: Entrada, Proceso y Salida.
Continuemos
Partes de un Algoritmo
• ENTRADA
• Corresponde al insumo, a los datos necesarios
que requiere el proceso para ofrecer los
resultados esperados.
• PROCESO
• Pasos necesarios para obtener la solución del
problema o la situación planteada.
• SALIDA
• Resultados arrojados por el proceso como
solución.
• En el ejemplo del algoritmo de la sumatoria de
los dos números, tenemos:
• ENTRADA
• Valores de las variables A y B.
• PROCESO
• Asignar a la variable Suma, el valor de a más el
valor de B.
• SALIDA
• Impresión del valor de la variable Suma, que
contiene la sumatoria de los valores de A y B.
Continuemos
Formas de representar un
Algoritmo
Continuemos
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.
Clasificación de algoritmos por
naturaleza
• Sustitución: En un cifrado por sustitución, cada letra o
grupo de letras se reemplaza por otra letra o grupo de
letras. Un ataque básico a este sistema de cifrado
aprovecha las propiedades y estadísticas del lenguaje
natural (por ejemplo en inglés la letra e es la más común,
por lo que el símbolo más repetido probablemente
simbolice la e). O Transposición: Los cifrados por
sustitución conservan el orden de los símbolos de texto
llano, pero los disfrazan. Los cifrados por transposición
reordenan las letras sin disfrazarlas. Para descifrarlo el
cripta analista debe estar consciente de que se
encuentra con un cifrado de este tipo (por ejemplo por
transposición de columnas), adivinar la cantidad de
columnas y ordenarlas lo cual es más complicado que la
sustitución. O Rellenos de una sola vez: Se escoge una
clave al azar, se convierte el texto plano en una cadena
de bits y se realiza un XOR entre la clave y el texto bit
por bit. Este método es inmune a cualquier ataque dado
que se rompe completamente con las propiedades y
estadísticas del lenguaje natural. El único problema es
que la clave no puede ser memorizada por lo que el
emisor y receptor deben cargar una copia con ellos (lo
cual es un peligro) junto con la sensibilidad del método a
algún carácter perdido. Continuemos
Propiedades de un
Algoritmo
• Como lo mencionamos en la entrada anterior,
un algoritmo es, básicamente, una secuencia
precisa de operaciones (pasos) que resuelven
un problema en un tiempo finito.
• Los algoritmos son independientes de
cualquier lenguaje de programación y del
ordenador que los ejecuta. Se pueden
expresar en multitud de lenguajes y ejecutarse
en distintos ordenadores.
• Entre las propiedades de los algoritmos
tenemos:
• a) Siempre debe terminar.
• b) Debe tener instrucciones concretas, es
decir, sin ninguna ambigüedad.
• c) Todos sus pasos deben ser simples y
tener un orden definido.
• d) Debe ser eficiente y rápido. Para un
problema existen múltiples soluciones, y
debemos escoger que consuma menos
tiempo y recursos.
• e) Debe funcionar sean cuales sean sus datos
de entrada.
• A partir de este punto trataremos de hacer
entradas cortas y un poco mas precisa, para
hacer mas cómoda la búsqueda de temas.
Finalizar

Más contenido relacionado

La actualidad más candente

P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosGeovanny Yungán
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosJavier Camacho
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventosMario Martinez Alvarez
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++die_dex
 
Algoritmos y pseudocodigo imagenes
Algoritmos y pseudocodigo imagenesAlgoritmos y pseudocodigo imagenes
Algoritmos y pseudocodigo imagenesdafemehe
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONKathGon1
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programaciónnormaroldano
 
Herramientas de Desarrollo de Software
Herramientas de Desarrollo de SoftwareHerramientas de Desarrollo de Software
Herramientas de Desarrollo de SoftwareTe Amo Gabriel
 
Diseño algorítmico
Diseño algorítmicoDiseño algorítmico
Diseño algorítmicooviedospablo
 
Herramientas de diseño para sistemas embebidos
Herramientas de diseño para sistemas embebidosHerramientas de diseño para sistemas embebidos
Herramientas de diseño para sistemas embebidosLuisf Muñoz
 

La actualidad más candente (20)

P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Polimorfismo y herencia
Polimorfismo y herenciaPolimorfismo y herencia
Polimorfismo y herencia
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Diseño Estructurado de Algoritmos
Diseño Estructurado de AlgoritmosDiseño Estructurado de Algoritmos
Diseño Estructurado de Algoritmos
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventos
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Pseudocodigo - Algoritmos - Diagramas de flujo
Pseudocodigo - Algoritmos - Diagramas de flujoPseudocodigo - Algoritmos - Diagramas de flujo
Pseudocodigo - Algoritmos - Diagramas de flujo
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
 
Lenguaje de Transferencia de Registro
Lenguaje de Transferencia de RegistroLenguaje de Transferencia de Registro
Lenguaje de Transferencia de Registro
 
Algoritmos y pseudocodigo imagenes
Algoritmos y pseudocodigo imagenesAlgoritmos y pseudocodigo imagenes
Algoritmos y pseudocodigo imagenes
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACION
 
Ciclo PARA
Ciclo PARACiclo PARA
Ciclo PARA
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programación
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Herramientas de Desarrollo de Software
Herramientas de Desarrollo de SoftwareHerramientas de Desarrollo de Software
Herramientas de Desarrollo de Software
 
Diseño algorítmico
Diseño algorítmicoDiseño algorítmico
Diseño algorítmico
 
Herramientas de diseño para sistemas embebidos
Herramientas de diseño para sistemas embebidosHerramientas de diseño para sistemas embebidos
Herramientas de diseño para sistemas embebidos
 
Tabla De Transicion
Tabla De TransicionTabla De Transicion
Tabla De Transicion
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
 

Similar a Algoritmo: concepto, características, partes y clasificación

Similar a Algoritmo: concepto, características, partes y clasificación (20)

Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
 
Algoritmos jhon
Algoritmos jhonAlgoritmos jhon
Algoritmos jhon
 
algoritmos
 algoritmos  algoritmos
algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Infoalgoritmo
InfoalgoritmoInfoalgoritmo
Infoalgoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Infoalgoritmo
InfoalgoritmoInfoalgoritmo
Infoalgoritmo
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
03 Intro Programacion C
03 Intro Programacion C03 Intro Programacion C
03 Intro Programacion C
 
Unidad i-guia1
Unidad i-guia1Unidad i-guia1
Unidad i-guia1
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Melendez
MelendezMelendez
Melendez
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadoras
 
PROGRAMACION-copia.pptx
PROGRAMACION-copia.pptxPROGRAMACION-copia.pptx
PROGRAMACION-copia.pptx
 
Flujogramas
FlujogramasFlujogramas
Flujogramas
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmos de victor gelvez
Algoritmos de victor gelvezAlgoritmos de victor gelvez
Algoritmos de victor gelvez
 

Último

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicaFlor Idalia Espinoza Ortega
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 

Último (20)

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamica
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 

Algoritmo: concepto, características, partes y clasificación

  • 2. Concepto Algoritmo • En matemáticas, ciencias de la computación y otras doctrinas relacionadas, el algoritmo se define como un conjunto de preceptos establecidos e inequívocos, encontrados metódicamente y de manera limitada que permiten efectuar cómputos, procesar ciertas informaciones, dar soluciones a problemas y llevar a cabo diversas actividades. Una vez que se parte de un estado inicial y una entrada, siguiendo los procedimientos requeridos, se llega al estado final y se obtiene un resultado. Los algoritmos son el objeto de indagación de la algoritmia y aunque muchos no lo crean, éstos también se pueden usar en todos los aspectos de la vida cotidiana. Continuemos
  • 3. Características de un algoritmo • Un algoritmo debe ser preciso: tiene que indicar el orden de realización de cada paso. • Un algoritmo debe estar definido: Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez. • Un algoritmo debe ser finito: el algoritmo se debe terminar en algún momento; o sea, debe tener un número finito de pasos. • Un algoritmo debe ser legible: El texto que lo describe debe ser claro, tal que permita entenderlo y leerlo fácilmente. • Un algoritmo debe definir tres partes: Entrada, Proceso y Salida. Continuemos
  • 4. Partes de un Algoritmo • ENTRADA • Corresponde al insumo, a los datos necesarios que requiere el proceso para ofrecer los resultados esperados. • PROCESO • Pasos necesarios para obtener la solución del problema o la situación planteada. • SALIDA • Resultados arrojados por el proceso como solución. • En el ejemplo del algoritmo de la sumatoria de los dos números, tenemos: • ENTRADA • Valores de las variables A y B. • PROCESO • Asignar a la variable Suma, el valor de a más el valor de B. • SALIDA • Impresión del valor de la variable Suma, que contiene la sumatoria de los valores de A y B. Continuemos
  • 5. Formas de representar un Algoritmo Continuemos 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.
  • 6. Clasificación de algoritmos por naturaleza • Sustitución: En un cifrado por sustitución, cada letra o grupo de letras se reemplaza por otra letra o grupo de letras. Un ataque básico a este sistema de cifrado aprovecha las propiedades y estadísticas del lenguaje natural (por ejemplo en inglés la letra e es la más común, por lo que el símbolo más repetido probablemente simbolice la e). O Transposición: Los cifrados por sustitución conservan el orden de los símbolos de texto llano, pero los disfrazan. Los cifrados por transposición reordenan las letras sin disfrazarlas. Para descifrarlo el cripta analista debe estar consciente de que se encuentra con un cifrado de este tipo (por ejemplo por transposición de columnas), adivinar la cantidad de columnas y ordenarlas lo cual es más complicado que la sustitución. O Rellenos de una sola vez: Se escoge una clave al azar, se convierte el texto plano en una cadena de bits y se realiza un XOR entre la clave y el texto bit por bit. Este método es inmune a cualquier ataque dado que se rompe completamente con las propiedades y estadísticas del lenguaje natural. El único problema es que la clave no puede ser memorizada por lo que el emisor y receptor deben cargar una copia con ellos (lo cual es un peligro) junto con la sensibilidad del método a algún carácter perdido. Continuemos
  • 7. Propiedades de un Algoritmo • Como lo mencionamos en la entrada anterior, un algoritmo es, básicamente, una secuencia precisa de operaciones (pasos) que resuelven un problema en un tiempo finito. • Los algoritmos son independientes de cualquier lenguaje de programación y del ordenador que los ejecuta. Se pueden expresar en multitud de lenguajes y ejecutarse en distintos ordenadores. • Entre las propiedades de los algoritmos tenemos: • a) Siempre debe terminar. • b) Debe tener instrucciones concretas, es decir, sin ninguna ambigüedad. • c) Todos sus pasos deben ser simples y tener un orden definido. • d) Debe ser eficiente y rápido. Para un problema existen múltiples soluciones, y debemos escoger que consuma menos tiempo y recursos. • e) Debe funcionar sean cuales sean sus datos de entrada. • A partir de este punto trataremos de hacer entradas cortas y un poco mas precisa, para hacer mas cómoda la búsqueda de temas. Finalizar