SlideShare una empresa de Scribd logo
1 de 33
CONCEPTOS BÁSICOS SOBRE
ALGORITMIA
Ing. César Augusto Gutiérrez R.
2015
ELEMENTOS DEL COMPUTADOR
+
HARDWARE
(Elementos físicos)
SOFTWARE (Programas)
HARDWARE
(Componentes físicos)
Unidades
Periféricas
De Entrada
Teclado
Mouse
Escáner.
Unidades
Periféricas
De Salida
Impresora
Monitor,
Parlantes.
Unidades de
Almacenamiento.
Disquete,
Discos compactos,
Discos duros.
Unidad de
Control
Unidad
Aritmética
Y Lógica
Memoria Principal
RAM y ROM
UNIDAD CENTRAL DE PROCESO
SOFTWARE
(Conjunto de Programas)
TIPOS DE SOFTWARE:
- Sistemas operativos
DOS, Windows, Linux.
- Aplicaciones de uso general
Word, Excel, Power Point.
- Aplicaciones de uso específico
Sistema de calificaciones,
facturación, nomina.
Programa 1 Programa 2
Programa 3
MEMORIA RAM
D A T O S
GENERALIDADES
DATO
Es la representación simbólica de un hecho, atributo o característica de una
entidad.
Por ejemplo: calificación de un alumno, nombre de un docente, color de un
carro, entre otros.
INFORMACIÓN
Es aquella que se obtiene mediante el procesamiento de los datos.
Por ejemplo: El promedio final de un alumno para un curso, número de
aprobados en un examen, nombre de los primeros alumnos de cada
carrera por semestre.
Procesador
Entrada Salida
Algoritmo
DATOS INFORMACION
 Es realizado por el procesador el cual ejecuta un conjunto de pasos
previamente definidos (algoritmo)
 El procesamiento de datos puede ser:
Manual
Mecanizada (uso de calculadora, sumadora, entre otros)
Automatizado (uso del computador)
PROCESAMIENTO DE DATOS
Operaciones que transforman datos en información
PROCESAMIENTO DE
DATOS AUTOMATIZADO
Entrada
DATOS
Salida
INFORMACIÓN
Programa
Algoritmo
Procesador
FASES PARA LA CONSTRUCCIÓN DE UN
PROGRAMA
SOLUCION DEL
PROBLEMA
IMPLEMENTACION
EN LA
COMPUTADORA
Datos Algoritmo
Programa
(Software)
Análisis del
problema
Diseño del
algoritmo
Verificación
del algoritmo
Error de
lógica
OK
Codificación
del algoritmo
(programa)
Ejecución del
programa
Verificación del
programa
Programa
Error de
sintaxis
OK
Algoritmo
TIPOS DE DATOS
(Reconocidos por el computador)
DATOS
BASICOS COMPUESTOS
Numéricos Alfanumérico Lógico Estático Dinámico
-Arreglos
-Registros
-Archivos
-Listas
-Arboles
-Grafos
-Enteros
-Reales
-Cadena
-Carácter
DATOS BÁSICOS
DATOS TIPO NUMÉRICO (Integer, Float, Double)
Enteros y Reales
El rango y precisión de los datos numéricos depende del lenguaje de
programación que se utilice.
DATOS TIPO CARÁCTER (Char, String)
Conjunto de caracteres que el computador reconoce.
Se encuentran normalizados bajo el código ASCII o EBCDIC
Caracteres alfabéticos: A - Z ; a - z
Caracteres numéricos: 0 - 9
Caracteres especiales: *, / , +, >, <, =, etc.
DATOS TIPO LÓGICO (Boolean)
Conjunto formado por dos valores lógicos:
verdad, falso
EXPRESIÓN DE LOS DATOS
Los datos pueden venir expresados como: constantes, variables,
expresiones, funciones.
CONSTANTE
Es un dato (de cualquier tipo) cuyo valor no cambia durante la
ejecución del algoritmo o programa.
TIPOS DE CONSTANTES
Literal: Es un valor expresado en forma explícita.
3.1416
Simbólica: Viene expresado bajo un nombre que guarda su valor
Pi (Previamente se debe definir que Pi = 3.1416).
VARIABLE
Es un objeto (espacio de memoria), que almacena un dato.
Para definir una variable es necesario:
•Darle un Nombre
•Indicar el tipo de dato que va almacenar
El valor de una variable puede cambiar durante la
ejecución del algoritmo.
EJEMPLOS DE TIPOS DE VARIABLES
Entero: edad, numero pares
Real: promedio, estatura
Carácter: nombre, sexo
Lógica: Fin, encontrado, valido
Es una combinación de operandos y operadores
Tipos:
Expresiones aritméticas
Operando: Constantes, variables y expresiones numéricas.
Operadores: Aritméticos
Resultado: Numérico
X = (EP + 2*EF + PP)/4
Expresiones lógicas
Operando: constantes, variables y expresiones lógicas
Operadores: lógicos y relacionales
Resultado: lógico
(PP>6.1 y PF>6.1)
EXPRESIONES
Son programas predefinidas que:
•Tienen un nombre con el cual se les invoca y
•Aceptan datos y devuelven un resultado.
Generalmente los lenguajes de programación poseen funciones
matemáticas, de cadenas y otros.
En C++
Abs(X): Devuelve el valor absoluto del número entero X
Sqrt(X): Devuelve la raíz cuadrada del número X (X>=0)
Identificadores
Son los nombres que se le dan a las constantes simbólicas,
variables, funciones y otros.
Constan de una cadena de caracteres que debe empezar con una
letra.
Deben ser significativos sugiriendo lo que representa.
FUNCIONES
Son los símbolos que actúan como enlace entre los argumentos de una
operación para formar expresiones.
TIPOS DE OPERADORES
1.Relacionales o Condicionales
Se utilizan para formar expresiones booleanas, es decir, que solo pueden
tener un resultado falso o verdadero.
OPERADORES
2. Aritméticos
Estos operadores se utilizan para unir variables y constantes numéricas
formando expresiones aritméticas.
3. Alfanumérico
Con este operador uniremos cadenas de caracteres, mediante el proceso
CONCATENACIÓN.
4. Lógicos o Booleanos
Estos operadores se utilizan para unir variables y constantes numéricas
formando expresiones aritméticas.
OPERACIONES CON LOS DATOS
OPERACIONES INTERVIENEN OPERADORES RESULTADO
ARITMÉTICAS Datos
Numéricos
Aritméticos
+, - , *, /,
modulo, entero
Dato
Numérico
DE COMPARACIÓN Datos del mismo
tipo
Relacionales
>, <, >=, <=, =
Dato
Lógico
LÓGICAS Datos
lógicos
Lógicos
No, Y, O
Dato
Lógico
ALFANUMÉRICAS Datos numéricos
y alfabéticos
+ Dato
alfanumérico
A L G O R I T M O S
TIPOS DE LENGUAJES DE
PROGRAMACIÓN
Lenguaje de alto nivel: lenguaje similar al lenguaje
natural. Son fáciles de escribir. Es el mas usado por los
programadores.
C#, C++, Basic, Php, Java
Lenguaje de bajo nivel: lenguaje nemotécnico.
ADD M, N, P
Lenguaje de máquina: lenguaje binario (0 y 1) entendible
directamente por el computador.
0110 1001 1010 1011
TIPOS DE PROGRAMAS
(Según el Lenguaje de Programación)
PROGRAMA FUENTE (PF)
Programa escrito en lenguaje de alto o bajo nivel.
PROGRAMA OBJETO (PO):
Programa escrito en lenguaje de máquina. Es el que ejecuta
el computador.
PROGRAMA
Es el algoritmo escrito en un lenguaje de programación,
para ser ejecutado por el computador.
TRADUCTORES DE LENGUAJE
Programa
Fuente
Compilador
Programa
Objeto
Programa
Fuente Intérprete
Ejecución del
Programa
Instrucción
en lenguaje
de maquina
Ejecución de la
Instrucción
Tipos de Traductores:
Compilador
instrucción
Son los encargados de traducir programas fuente a lenguaje de
máquina.
Intérprete
CONCEPTOS GENERALES
ALGORITMO
Secuencia ordenada de pasos o acciones o instrucciones que se debe
ejecutar para realizar una tarea o para resolver un problema.
Es expresado en lenguaje natural utilizando herramientas
estandarizadas.
Características de un algoritmo
Preciso: El algoritmo debe indicar el orden en que se debe realizar
cada paso.
Finito: El algoritmo tiene un número finito de pasos y debe terminar
en algún momento.
Bien definido: Si el algoritmo se prueba dos veces con los mismos
datos de entrada, se debe obtener el mismo resultado.
TIPOS DE ALGORITMOS
ALGORITMOS CUALITATIVOS
Son aquellos en los que se describen o se resuelven problemas de la
vida cotidiana, enmarcados en tres estructuras fundamentales:
•Secuencias de acciones
•Decisión de acción
•Ciclos de acciones
ALGORITMOS CUANTITATIVOS
Son aquellos en los que se utilizan cálculos numéricos para definir
los pasos del proceso.
Conjunto de técnicas para desarrollar algoritmos fáciles de escribir, leer,
verificar y modificar.
•Diseño Modular ( Top-Down)
En problemas grandes y complejos: dividir el problema en subproblemas y
diseñar un subprograma para resolver cada uno de ellos.
•Descomposición del programa en recursos abstractos
Descompone una acción compleja en acciones simples capaces de ser
ejecutadas por un computador (instrucciones).
•Estructuras de control básicas
Un programa se escribe utilizando 3 estructuras de control: Secuenciales,
Selectivas, Repetitivas.
TÉCNICA DE PROGRAMACIÓN
ESTRUCTURADA
Son las acciones que van a ser ejecutadas por el computador para
resolver el problema.
Instrucciones de Inicio/Fin : Indica el Inicio y el Fin del algoritmo
Instrucciones de lectura: Solicita al usuario el ingreso de datos desde
un dispositivo de entrada por ejemplo el teclado.
Instrucciones de escritura: Muestra los resultados a través de un
dispositivo de salida por ejemplo la pantalla o impresora.
Instrucciones de asignación: Almacena un valor en una variable,
perdiéndose cualquier otro valor almacenado en ella.
Instrucciones selectivas: Permiten ejecutar unas u otras tareas de
acuerdo al resultado de una expresión condicional.
Instrucciones repetitivas: Permiten la repetición de un grupo de
instrucciones, generando un bucle (ciclo o loop).
INSTRUCCIONES
HERRAMIENTAS PARA LA
REPRESENTACIÓN DE ALGORITMOS
Para representar los algoritmos en forma estandarizada,
existen herramientas como:
•Diagrama de flujo
Técnica tipo gráfico.
•Pseudocódigo
Lenguaje de especificación (palabras reservadas) en lenguaje
natural.
•Diagrama de Nassi-Scheneiderman
Es una combinación de las dos anteriores.
ESCRITURA DE UN ALGORITMO EN
PSEUDOCÓDIGO
CABECERA
Contiene el nombre del algoritmo (opcional)
Constantes
Nombre-constante = valor
Variables
Tipo-dato: nombre de variables
BLOQUE DE DECLARACIONES
Se utilizan para asignar espacios en la RAM
Se declaran: Constantes (opcional),
Variables (obligatorio),
Otros definidos por el usuario (opc.)
BLOQUE DE INSTRUCCIONES
• Inicio/Fin
• Lectura
Leer ( lista de variables)
• Escritura
Escribir ( resultado)
• Asignación
nombre de la variable  valor ó expresión
•Comentarios (no se ejecutan)
Sirven para escribir información interna para
facilitar el mantenimiento del algoritmo.
Formato: // comentario
Algoritmo nombre del algoritmo
Inicio
instrucciones
Fin
DIAGRAMA DE FLUJO PSEUDOCÓDIGO
Símbolos Significado Palabras reservadas
Inicio / Fin
Lectura / Escritura
Proceso
Selectiva
Proceso
repetitivo
Inicio / Fin
Dirección o flujo
Leer / Escribir
Si - entonces
+ - * / 
Mientras/
desde/Repetir
Se cuenta con las notas del primer corte (EP), segundo corte (EF)
y corte final (PP) de un alumno.
Se sabe que el promedio final (PF), se calcula con la fórmula:
PF=(EP+ PP+2xEF)/4
Si el alumno cumple con la siguiente condición: PP>6.1 y PF> 6.1
tiene opción a rendir un examen sustitutorio (ES).
Escriba un algoritmo reciba las notas del alumno y luego muestre
un mensaje indicando si el alumno puede rendir o no puede
rendir el ES. En el caso que ya no pueda rendir el ES, debe
mostrar también el PF.
EJEMPLO DE ALGORITMO
Análisis
Datos de entrada: EP, EF, PP
Salida: mensaje y PF (si no puede rendir ES)
Algoritmo
Inicio del algoritmo
Ingresar las notas del alumno: EP, EF y PP
Calcular PF con la siguiente fórmula:
PF = (EP + 2EF + PP)/4
Si cumple la condición PP> 6.1 y PF>6.1 entonces
mostrar el mensaje “Puede rendir el ES”
Si no cumple la condición entonces
mostrar el mensaje “No puede rendir ES” y mostrar PF
Fin del algoritmo.
EL ALGORITMO EN PSEUDOCÓDIGO
Algoritmo PROMEDIO
Variables
entero: EP, EF
real: PP, PF
Inicio
Leer (EP, EF, PP)
PF  (EP+PP+2*EF)/4 // Calcula PF
Si (PP>6.1 y PF>6.1)
Escribir ( “Puede rendir el ES”)
sino
Escribir (“No puede rendir el ES”)
Escribir (“La nota final es: “, PF)
Fin-si
Fin
Cabecera del algoritmo
Bloque de declaraciones
Bloque de
Instrucciones
EL ALGORITMO EN DIAGRAMA DE FLUJO
Inicio
Leer EP,EF, PP
PF=(EP+PP+2*EF)/4
PP>6.1 y PF>6.1
Escribir “Puede
rendir ES”
Escribir “No puede
rendir ES”
Fin
Escribir “La nota final
es: “ , PF

Más contenido relacionado

La actualidad más candente

Microsoft office word
Microsoft office wordMicrosoft office word
Microsoft office word
Stellauran
 

La actualidad más candente (20)

REGISTRO DE BANDERAS
REGISTRO DE BANDERASREGISTRO DE BANDERAS
REGISTRO DE BANDERAS
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Pseudocodigo - Algoritmos - Diagramas de flujo
Pseudocodigo - Algoritmos - Diagramas de flujoPseudocodigo - Algoritmos - Diagramas de flujo
Pseudocodigo - Algoritmos - Diagramas de flujo
 
Herramientas Ofimaticas.pptx
Herramientas Ofimaticas.pptxHerramientas Ofimaticas.pptx
Herramientas Ofimaticas.pptx
 
Arreglos Unidimensionales - Java - NetBeans
Arreglos Unidimensionales - Java - NetBeansArreglos Unidimensionales - Java - NetBeans
Arreglos Unidimensionales - Java - NetBeans
 
Usando flex en Windows
Usando flex en WindowsUsando flex en Windows
Usando flex en Windows
 
Componentes de un sistema operativo
Componentes de un sistema operativoComponentes de un sistema operativo
Componentes de un sistema operativo
 
Microsoft office word
Microsoft office wordMicrosoft office word
Microsoft office word
 
Teoria de Automatas & Lenguajes Formales
Teoria de Automatas & Lenguajes FormalesTeoria de Automatas & Lenguajes Formales
Teoria de Automatas & Lenguajes Formales
 
Presentación PSeInt
Presentación PSeIntPresentación PSeInt
Presentación PSeInt
 
Estructuras repetitivas, material de estudio.pdf
Estructuras repetitivas, material de estudio.pdfEstructuras repetitivas, material de estudio.pdf
Estructuras repetitivas, material de estudio.pdf
 
Estructura basica de visual basic
Estructura basica de visual basicEstructura basica de visual basic
Estructura basica de visual basic
 
Tipos de datos, identificadores, variables y constantes
Tipos de datos, identificadores,  variables y constantesTipos de datos, identificadores,  variables y constantes
Tipos de datos, identificadores, variables y constantes
 
Manuel torres mapa_mental
Manuel torres mapa_mentalManuel torres mapa_mental
Manuel torres mapa_mental
 
Algoritmos y metodología para la solución de problemas
Algoritmos y metodología para la solución de problemasAlgoritmos y metodología para la solución de problemas
Algoritmos y metodología para la solución de problemas
 
Entorno de Windows
Entorno de WindowsEntorno de Windows
Entorno de Windows
 
OPERADORES ARITMETICOS
OPERADORES ARITMETICOSOPERADORES ARITMETICOS
OPERADORES ARITMETICOS
 
algoritmos-.ppt
algoritmos-.pptalgoritmos-.ppt
algoritmos-.ppt
 
Ensamblador y enlazador
Ensamblador y enlazadorEnsamblador y enlazador
Ensamblador y enlazador
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 

Destacado (13)

Presentacion final
Presentacion finalPresentacion final
Presentacion final
 
CN Resume comp
CN Resume compCN Resume comp
CN Resume comp
 
M2 t1 planificador_aamtic.docx
M2 t1 planificador_aamtic.docxM2 t1 planificador_aamtic.docx
M2 t1 planificador_aamtic.docx
 
Välispraktika itaalias 2016
Välispraktika itaalias 2016Välispraktika itaalias 2016
Välispraktika itaalias 2016
 
Antas Sharma CV
Antas Sharma CVAntas Sharma CV
Antas Sharma CV
 
sammycastillo-nepal
sammycastillo-nepalsammycastillo-nepal
sammycastillo-nepal
 
Operaciones 1 k.xlsx
Operaciones 1 k.xlsxOperaciones 1 k.xlsx
Operaciones 1 k.xlsx
 
Esquema de monografía
Esquema de monografíaEsquema de monografía
Esquema de monografía
 
Jasini (përkthim nga dr. Musli Vërbani)
Jasini (përkthim nga dr. Musli Vërbani)Jasini (përkthim nga dr. Musli Vërbani)
Jasini (përkthim nga dr. Musli Vërbani)
 
Advanced Practitioners Workshop (Peer Review Practice Workshop for Experience...
Advanced Practitioners Workshop (Peer Review Practice Workshop for Experience...Advanced Practitioners Workshop (Peer Review Practice Workshop for Experience...
Advanced Practitioners Workshop (Peer Review Practice Workshop for Experience...
 
Lista de apellidos Sefaradim Sefardim
Lista de apellidos Sefaradim SefardimLista de apellidos Sefaradim Sefardim
Lista de apellidos Sefaradim Sefardim
 
Дебата у настави
Дебата у наставиДебата у настави
Дебата у настави
 
Food
FoodFood
Food
 

Similar a Conceptos básicos sobre algortimia

01 metprogramacion
01 metprogramacion01 metprogramacion
01 metprogramacion
ConfesorAD
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
Boris Salleg
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
Luna Galvan
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
EberCV1
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
EberCV1
 
Fundamentos programación
Fundamentos programaciónFundamentos programación
Fundamentos programación
Milton Escobar
 
Tipos de datos, identificadores, variables y constantes 97 2003
Tipos de datos, identificadores, variables y constantes 97 2003Tipos de datos, identificadores, variables y constantes 97 2003
Tipos de datos, identificadores, variables y constantes 97 2003
Joseluis Cruz Ramirez
 

Similar a Conceptos básicos sobre algortimia (20)

Algoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tkAlgoritmos Conceptos Basicos - www.ingfiis.tk
Algoritmos Conceptos Basicos - www.ingfiis.tk
 
Algoritmosconeptosbasicos 1
Algoritmosconeptosbasicos 1Algoritmosconeptosbasicos 1
Algoritmosconeptosbasicos 1
 
Algorimo1
Algorimo1Algorimo1
Algorimo1
 
Algoritmos conceptos basicos
Algoritmos conceptos basicosAlgoritmos conceptos basicos
Algoritmos conceptos basicos
 
Fundamentos-de-Algoritmos.ppt
Fundamentos-de-Algoritmos.pptFundamentos-de-Algoritmos.ppt
Fundamentos-de-Algoritmos.ppt
 
algoritmo
algoritmoalgoritmo
algoritmo
 
INTRODUCCION
INTRODUCCIONINTRODUCCION
INTRODUCCION
 
01 metprogramacion
01 metprogramacion01 metprogramacion
01 metprogramacion
 
algoritmos3.ppt
algoritmos3.pptalgoritmos3.ppt
algoritmos3.ppt
 
Algoritmos 02
Algoritmos 02Algoritmos 02
Algoritmos 02
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
Intorduccion Algoritmos
Intorduccion AlgoritmosIntorduccion Algoritmos
Intorduccion Algoritmos
 
Fundamentos programación
Fundamentos programaciónFundamentos programación
Fundamentos programación
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Tipos de datos, identificadores, variables y constantes 97 2003
Tipos de datos, identificadores, variables y constantes 97 2003Tipos de datos, identificadores, variables y constantes 97 2003
Tipos de datos, identificadores, variables y constantes 97 2003
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Video Primer Bimestre Metodologia Abierta
Video Primer Bimestre Metodologia AbiertaVideo Primer Bimestre Metodologia Abierta
Video Primer Bimestre Metodologia Abierta
 

Más de IEO Santo Tomás

Más de IEO Santo Tomás (12)

Unidad I Metodología de Investigación
Unidad I Metodología de InvestigaciónUnidad I Metodología de Investigación
Unidad I Metodología de Investigación
 
Modelos de ciclo de vida del software
Modelos de ciclo de vida del softwareModelos de ciclo de vida del software
Modelos de ciclo de vida del software
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Manual de Uso PseInt
Manual de Uso PseIntManual de Uso PseInt
Manual de Uso PseInt
 
Proyecto TICtures
Proyecto TICturesProyecto TICtures
Proyecto TICtures
 
Metodología para la solución de un problema
Metodología para la solución de un problemaMetodología para la solución de un problema
Metodología para la solución de un problema
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectiva
 
Estructuras de control repetitivas
Estructuras de control repetitivasEstructuras de control repetitivas
Estructuras de control repetitivas
 
Metodología para la solución de problemas con el uso de algoritmos
Metodología para la solución de problemas con el uso de algoritmosMetodología para la solución de problemas con el uso de algoritmos
Metodología para la solución de problemas con el uso de algoritmos
 
Introducción a Programación Básica
Introducción a Programación BásicaIntroducción a Programación Básica
Introducción a Programación Básica
 
Tipos de algoritmos
Tipos de algoritmosTipos de algoritmos
Tipos de algoritmos
 
Formación del ing. de sistemas para la sociedad
Formación del ing. de sistemas para la sociedadFormación del ing. de sistemas para la sociedad
Formación del ing. de sistemas para la sociedad
 

Último

S01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfS01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdf
SalomeRunco
 
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbbTema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
antoniolfdez2006
 

Último (20)

INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)
INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)
INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)
 
Balance materia y energia procesos de Secado
Balance materia y energia procesos de SecadoBalance materia y energia procesos de Secado
Balance materia y energia procesos de Secado
 
5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.
 
Manual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdfManual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdf
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo Limache
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxEFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
Auditoría de Sistemas de Gestión
Auditoría    de   Sistemas     de GestiónAuditoría    de   Sistemas     de Gestión
Auditoría de Sistemas de Gestión
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
 
Video sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptxVideo sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptx
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
Matrices Matemáticos universitario pptx
Matrices  Matemáticos universitario pptxMatrices  Matemáticos universitario pptx
Matrices Matemáticos universitario pptx
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
S01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfS01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdf
 
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbbTema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
Mecatronica Automotriz .pdf
Mecatronica Automotriz              .pdfMecatronica Automotriz              .pdf
Mecatronica Automotriz .pdf
 

Conceptos básicos sobre algortimia

  • 1. CONCEPTOS BÁSICOS SOBRE ALGORITMIA Ing. César Augusto Gutiérrez R. 2015
  • 2. ELEMENTOS DEL COMPUTADOR + HARDWARE (Elementos físicos) SOFTWARE (Programas)
  • 3. HARDWARE (Componentes físicos) Unidades Periféricas De Entrada Teclado Mouse Escáner. Unidades Periféricas De Salida Impresora Monitor, Parlantes. Unidades de Almacenamiento. Disquete, Discos compactos, Discos duros. Unidad de Control Unidad Aritmética Y Lógica Memoria Principal RAM y ROM UNIDAD CENTRAL DE PROCESO
  • 4. SOFTWARE (Conjunto de Programas) TIPOS DE SOFTWARE: - Sistemas operativos DOS, Windows, Linux. - Aplicaciones de uso general Word, Excel, Power Point. - Aplicaciones de uso específico Sistema de calificaciones, facturación, nomina. Programa 1 Programa 2 Programa 3 MEMORIA RAM
  • 5. D A T O S
  • 6. GENERALIDADES DATO Es la representación simbólica de un hecho, atributo o característica de una entidad. Por ejemplo: calificación de un alumno, nombre de un docente, color de un carro, entre otros. INFORMACIÓN Es aquella que se obtiene mediante el procesamiento de los datos. Por ejemplo: El promedio final de un alumno para un curso, número de aprobados en un examen, nombre de los primeros alumnos de cada carrera por semestre.
  • 7. Procesador Entrada Salida Algoritmo DATOS INFORMACION  Es realizado por el procesador el cual ejecuta un conjunto de pasos previamente definidos (algoritmo)  El procesamiento de datos puede ser: Manual Mecanizada (uso de calculadora, sumadora, entre otros) Automatizado (uso del computador) PROCESAMIENTO DE DATOS Operaciones que transforman datos en información
  • 9. FASES PARA LA CONSTRUCCIÓN DE UN PROGRAMA SOLUCION DEL PROBLEMA IMPLEMENTACION EN LA COMPUTADORA Datos Algoritmo Programa (Software) Análisis del problema Diseño del algoritmo Verificación del algoritmo Error de lógica OK Codificación del algoritmo (programa) Ejecución del programa Verificación del programa Programa Error de sintaxis OK Algoritmo
  • 10. TIPOS DE DATOS (Reconocidos por el computador) DATOS BASICOS COMPUESTOS Numéricos Alfanumérico Lógico Estático Dinámico -Arreglos -Registros -Archivos -Listas -Arboles -Grafos -Enteros -Reales -Cadena -Carácter
  • 11. DATOS BÁSICOS DATOS TIPO NUMÉRICO (Integer, Float, Double) Enteros y Reales El rango y precisión de los datos numéricos depende del lenguaje de programación que se utilice. DATOS TIPO CARÁCTER (Char, String) Conjunto de caracteres que el computador reconoce. Se encuentran normalizados bajo el código ASCII o EBCDIC Caracteres alfabéticos: A - Z ; a - z Caracteres numéricos: 0 - 9 Caracteres especiales: *, / , +, >, <, =, etc. DATOS TIPO LÓGICO (Boolean) Conjunto formado por dos valores lógicos: verdad, falso
  • 12. EXPRESIÓN DE LOS DATOS Los datos pueden venir expresados como: constantes, variables, expresiones, funciones. CONSTANTE Es un dato (de cualquier tipo) cuyo valor no cambia durante la ejecución del algoritmo o programa. TIPOS DE CONSTANTES Literal: Es un valor expresado en forma explícita. 3.1416 Simbólica: Viene expresado bajo un nombre que guarda su valor Pi (Previamente se debe definir que Pi = 3.1416).
  • 13. VARIABLE Es un objeto (espacio de memoria), que almacena un dato. Para definir una variable es necesario: •Darle un Nombre •Indicar el tipo de dato que va almacenar El valor de una variable puede cambiar durante la ejecución del algoritmo. EJEMPLOS DE TIPOS DE VARIABLES Entero: edad, numero pares Real: promedio, estatura Carácter: nombre, sexo Lógica: Fin, encontrado, valido
  • 14. Es una combinación de operandos y operadores Tipos: Expresiones aritméticas Operando: Constantes, variables y expresiones numéricas. Operadores: Aritméticos Resultado: Numérico X = (EP + 2*EF + PP)/4 Expresiones lógicas Operando: constantes, variables y expresiones lógicas Operadores: lógicos y relacionales Resultado: lógico (PP>6.1 y PF>6.1) EXPRESIONES
  • 15. Son programas predefinidas que: •Tienen un nombre con el cual se les invoca y •Aceptan datos y devuelven un resultado. Generalmente los lenguajes de programación poseen funciones matemáticas, de cadenas y otros. En C++ Abs(X): Devuelve el valor absoluto del número entero X Sqrt(X): Devuelve la raíz cuadrada del número X (X>=0) Identificadores Son los nombres que se le dan a las constantes simbólicas, variables, funciones y otros. Constan de una cadena de caracteres que debe empezar con una letra. Deben ser significativos sugiriendo lo que representa. FUNCIONES
  • 16. Son los símbolos que actúan como enlace entre los argumentos de una operación para formar expresiones. TIPOS DE OPERADORES 1.Relacionales o Condicionales Se utilizan para formar expresiones booleanas, es decir, que solo pueden tener un resultado falso o verdadero. OPERADORES
  • 17. 2. Aritméticos Estos operadores se utilizan para unir variables y constantes numéricas formando expresiones aritméticas. 3. Alfanumérico Con este operador uniremos cadenas de caracteres, mediante el proceso CONCATENACIÓN. 4. Lógicos o Booleanos Estos operadores se utilizan para unir variables y constantes numéricas formando expresiones aritméticas.
  • 18. OPERACIONES CON LOS DATOS OPERACIONES INTERVIENEN OPERADORES RESULTADO ARITMÉTICAS Datos Numéricos Aritméticos +, - , *, /, modulo, entero Dato Numérico DE COMPARACIÓN Datos del mismo tipo Relacionales >, <, >=, <=, = Dato Lógico LÓGICAS Datos lógicos Lógicos No, Y, O Dato Lógico ALFANUMÉRICAS Datos numéricos y alfabéticos + Dato alfanumérico
  • 19. A L G O R I T M O S
  • 20. TIPOS DE LENGUAJES DE PROGRAMACIÓN Lenguaje de alto nivel: lenguaje similar al lenguaje natural. Son fáciles de escribir. Es el mas usado por los programadores. C#, C++, Basic, Php, Java Lenguaje de bajo nivel: lenguaje nemotécnico. ADD M, N, P Lenguaje de máquina: lenguaje binario (0 y 1) entendible directamente por el computador. 0110 1001 1010 1011
  • 21. TIPOS DE PROGRAMAS (Según el Lenguaje de Programación) PROGRAMA FUENTE (PF) Programa escrito en lenguaje de alto o bajo nivel. PROGRAMA OBJETO (PO): Programa escrito en lenguaje de máquina. Es el que ejecuta el computador. PROGRAMA Es el algoritmo escrito en un lenguaje de programación, para ser ejecutado por el computador.
  • 22. TRADUCTORES DE LENGUAJE Programa Fuente Compilador Programa Objeto Programa Fuente Intérprete Ejecución del Programa Instrucción en lenguaje de maquina Ejecución de la Instrucción Tipos de Traductores: Compilador instrucción Son los encargados de traducir programas fuente a lenguaje de máquina. Intérprete
  • 23. CONCEPTOS GENERALES ALGORITMO Secuencia ordenada de pasos o acciones o instrucciones que se debe ejecutar para realizar una tarea o para resolver un problema. Es expresado en lenguaje natural utilizando herramientas estandarizadas. Características de un algoritmo Preciso: El algoritmo debe indicar el orden en que se debe realizar cada paso. Finito: El algoritmo tiene un número finito de pasos y debe terminar en algún momento. Bien definido: Si el algoritmo se prueba dos veces con los mismos datos de entrada, se debe obtener el mismo resultado.
  • 24. TIPOS DE ALGORITMOS ALGORITMOS CUALITATIVOS Son aquellos en los que se describen o se resuelven problemas de la vida cotidiana, enmarcados en tres estructuras fundamentales: •Secuencias de acciones •Decisión de acción •Ciclos de acciones ALGORITMOS CUANTITATIVOS Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.
  • 25. Conjunto de técnicas para desarrollar algoritmos fáciles de escribir, leer, verificar y modificar. •Diseño Modular ( Top-Down) En problemas grandes y complejos: dividir el problema en subproblemas y diseñar un subprograma para resolver cada uno de ellos. •Descomposición del programa en recursos abstractos Descompone una acción compleja en acciones simples capaces de ser ejecutadas por un computador (instrucciones). •Estructuras de control básicas Un programa se escribe utilizando 3 estructuras de control: Secuenciales, Selectivas, Repetitivas. TÉCNICA DE PROGRAMACIÓN ESTRUCTURADA
  • 26. Son las acciones que van a ser ejecutadas por el computador para resolver el problema. Instrucciones de Inicio/Fin : Indica el Inicio y el Fin del algoritmo Instrucciones de lectura: Solicita al usuario el ingreso de datos desde un dispositivo de entrada por ejemplo el teclado. Instrucciones de escritura: Muestra los resultados a través de un dispositivo de salida por ejemplo la pantalla o impresora. Instrucciones de asignación: Almacena un valor en una variable, perdiéndose cualquier otro valor almacenado en ella. Instrucciones selectivas: Permiten ejecutar unas u otras tareas de acuerdo al resultado de una expresión condicional. Instrucciones repetitivas: Permiten la repetición de un grupo de instrucciones, generando un bucle (ciclo o loop). INSTRUCCIONES
  • 27. HERRAMIENTAS PARA LA REPRESENTACIÓN DE ALGORITMOS Para representar los algoritmos en forma estandarizada, existen herramientas como: •Diagrama de flujo Técnica tipo gráfico. •Pseudocódigo Lenguaje de especificación (palabras reservadas) en lenguaje natural. •Diagrama de Nassi-Scheneiderman Es una combinación de las dos anteriores.
  • 28. ESCRITURA DE UN ALGORITMO EN PSEUDOCÓDIGO CABECERA Contiene el nombre del algoritmo (opcional) Constantes Nombre-constante = valor Variables Tipo-dato: nombre de variables BLOQUE DE DECLARACIONES Se utilizan para asignar espacios en la RAM Se declaran: Constantes (opcional), Variables (obligatorio), Otros definidos por el usuario (opc.) BLOQUE DE INSTRUCCIONES • Inicio/Fin • Lectura Leer ( lista de variables) • Escritura Escribir ( resultado) • Asignación nombre de la variable  valor ó expresión •Comentarios (no se ejecutan) Sirven para escribir información interna para facilitar el mantenimiento del algoritmo. Formato: // comentario Algoritmo nombre del algoritmo Inicio instrucciones Fin
  • 29. DIAGRAMA DE FLUJO PSEUDOCÓDIGO Símbolos Significado Palabras reservadas Inicio / Fin Lectura / Escritura Proceso Selectiva Proceso repetitivo Inicio / Fin Dirección o flujo Leer / Escribir Si - entonces + - * /  Mientras/ desde/Repetir
  • 30. Se cuenta con las notas del primer corte (EP), segundo corte (EF) y corte final (PP) de un alumno. Se sabe que el promedio final (PF), se calcula con la fórmula: PF=(EP+ PP+2xEF)/4 Si el alumno cumple con la siguiente condición: PP>6.1 y PF> 6.1 tiene opción a rendir un examen sustitutorio (ES). Escriba un algoritmo reciba las notas del alumno y luego muestre un mensaje indicando si el alumno puede rendir o no puede rendir el ES. En el caso que ya no pueda rendir el ES, debe mostrar también el PF. EJEMPLO DE ALGORITMO
  • 31. Análisis Datos de entrada: EP, EF, PP Salida: mensaje y PF (si no puede rendir ES) Algoritmo Inicio del algoritmo Ingresar las notas del alumno: EP, EF y PP Calcular PF con la siguiente fórmula: PF = (EP + 2EF + PP)/4 Si cumple la condición PP> 6.1 y PF>6.1 entonces mostrar el mensaje “Puede rendir el ES” Si no cumple la condición entonces mostrar el mensaje “No puede rendir ES” y mostrar PF Fin del algoritmo.
  • 32. EL ALGORITMO EN PSEUDOCÓDIGO Algoritmo PROMEDIO Variables entero: EP, EF real: PP, PF Inicio Leer (EP, EF, PP) PF  (EP+PP+2*EF)/4 // Calcula PF Si (PP>6.1 y PF>6.1) Escribir ( “Puede rendir el ES”) sino Escribir (“No puede rendir el ES”) Escribir (“La nota final es: “, PF) Fin-si Fin Cabecera del algoritmo Bloque de declaraciones Bloque de Instrucciones
  • 33. EL ALGORITMO EN DIAGRAMA DE FLUJO Inicio Leer EP,EF, PP PF=(EP+PP+2*EF)/4 PP>6.1 y PF>6.1 Escribir “Puede rendir ES” Escribir “No puede rendir ES” Fin Escribir “La nota final es: “ , PF