1. Lic. Luis Alfonso Rodríguez Especialista en Mantenimiento, Ensamble Y Reparación de P.C
1
2. ¿Qué es algoritmo?
Conjunto de instrucciones organizadas que
permite la resolución de un problema paso
a paso.
Es un conjunto de acciones o secuencia de
operaciones que ejecutadas en un
determinado orden resuelven el problema.
Existen n algoritmos, hay que coger el más
efectivo.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 2
3. Características
Precisión: Es la indicación del orden en que deben ejecutarse cada uno de
los pasos.
Finitud: Es la consecución del resultado deseado después de un conjunto
de pasos ejecutados.
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. Si se sigue un algoritmo se debe terminar en
algún momento; o sea, debe tener un numero finito de pasos.
La definición de un algoritmo debe definir tres partes: Entrada, Proceso
y Salida. En el algoritmo de receta de cocina citado anteriormente se tendrá:
Entrada: ingrediente y utensilios empleados.
Proceso: elaboración de la receta en la cocina.
Salida: terminación del plato (por ejemplo, cordero).
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 3
4. Pasos
Análisis preliminar o evaluación del problema: Estudiar el
problema en generar y ver que parte nos interesa.
Definición o análisis del problema: Ver que es lo que entra y
que es lo que sale, las posibles condiciones o restricciones.
Diseño del algoritmo: Diseñar la solución del problema.
El programa: Codificación del programa en un lenguaje de
programación.
Ejecución del programa y la prueba de escritorio: ver si el
programa hace lo que queremos.
Lic. Luis Alfonso Rodríguez Especialista en Mantenimiento, Ensamble Y Reparación de P.C
4
5. ¿Pseudocódigo?
Considerado como un lenguaje falso, el pseudocódigo
es un lenguaje intermedio entre nuestro lenguaje y el de
programación, debido a que quien lo utiliza se guía por
una serie de normas pero sin llegar a usar una estructura
tan rígida como la del lenguaje de programación.
El objetivo al que apunta es que quien lo pone en
práctica se centre más en la solución del algoritmo o el
diseño de un software que en el programa que utiliza
para crearlo. Y esto es posible porque es más fácil de
manipular ya que no tiene que tener en mente el
lenguaje en sí y además, más fácil de codificar.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 5
6. ¿Pseudocódigo?
Por ejemplo, si alguien tiene que hacer un software con un fin
determinado, utiliza un pseudocódigo propio en donde
confluyen frases del lenguaje coloquial y algunas palabras de
programación, y una vez que se logra concretar el software, se
puede pasar al escalón siguiente que es el de la transformación
al lenguaje de programación formal que se vaya a utilizar.
De esta manera, al ser un lenguaje intermedio, no tiene una
composición estandarizada por lo que no todos los
programadores utilizan la misma sintaxis con exactitud. Pero a
la vez, como es una herramienta que está un paso previo al
lenguaje formal de programación, es fácil de transformar al
que será ejecutado en la computadora.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 6
7. Tipos de lenguajes algorítmicos
Semiformales: Las reglas gramaticales y
sintácticas se han reducido al mínimo.
Formales: Las reglas gramaticales y sintácticas
deben ser mucho mas precisas e inequívocas.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 7
Gráficos: Es la representación gráfica de las
operaciones que realiza un algoritmo. (diagrama
de flujo).
No Gráficos: Representa en forma descriptiva las
operaciones que debe realizar un algoritmo
(pseudocódigo).
8. Diagrama de flujo
Representación
grafica del flujo de
datos que resolverá
el problema
algorítmico.
Lic. Luis Alfonso Rodríguez Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
8
Pseudocódigo
En este ejemplo la
representación es
mas precisa y
descriptiva para
resolver el problema
NICIO
Edad: Entero
ESCRIBA “cual es tu edad?”
Lea Edad
SI Edad >=18 entonces
ESCRIBA “Eres mayor de Edad”
FINSI
FIN
9. ¿Qué es un programa?
Un programa es una serie de comandos ejecutados por el
equipo. Sin embargo, el equipo sólo es capaz de procesar
elementos binarios, es decir, una serie de 0s y 1s. Por lo
tanto, necesitamos un lenguaje de programación para
escribir de manera legible, es decir, con comandos que el
ser humano pueda comprender (por ser similares a su
propio lenguaje) los comandos que el equipo deberá
ejecutar.
Estos programas se traducen después a un lenguaje
máquina (en binario) a través de un compilador.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 9
10. El método de escritura de un programa está muy ligado al
lenguaje de programación elegido, ya que existen muchos
tipos distintos. Además, el compilador debe coincidir con el
lenguaje elegido: cada lenguaje de programación tiene su
propio compilador (excepto los lenguajes interpretados).
En términos generales, el programa es un simple archivo de
texto (escrito usando un procesador o editor de texto),
llamado archivo fuente).
El archivo fuente contiene líneas de programa
llamadas código fuente. Este archivo fuente, debe
compilarse una vez completado. La compilación se realiza
en dos pasos:
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 10
11. El compilador transforma el código fuente en código objeto y lo guarda
en un archivo objeto, es decir que traduce el archivo fuente a lenguaje
máquina (algunos compiladores también crean un archivo en
ensamblador, un lenguaje similar al lenguaje máquina ya que posee las
funciones básicas, pero puede ser leído por los seres humanos.
Luego, el compilador llama a un editor de vínculos (o ensamblador) que
permite insertar los elementos adicionales (funciones y bibliotecas) a los
que hace referencia el programa dentro del archivo final, pero que no se
almacenan en el archivo fuente.
A continuación, se crea un archivo ejecutable que contiene todos los
elementos requeridos por el programa para funcionar de manera
independiente (en Microsoft Windows o MS-DOS este archivo tendrá la
extensión .exe).
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 11
12. Tipos de programas
Fuente: Es el programa escrito por el programador a partir del algoritmo.
Objeto: Es el programa obtenido por el ordenador atreves del programa fuente,
después de un proceso de compilación.
Ejecutables o binario: Es el programa obtenido por el ordenador a partir del
programa objeto.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 12
A la persona que desarrolla un programa se le llama programador, y no tiene que
ser, necesariamente, la misma que la que hace uso de dicho programa. A esta
segunda persona se le denomina usuario. De hecho, la mayoría de los usuarios no
necesitan tener conocimientos avanzados de informática para utilizar los
programas. Por ejemplo, un usuario común no necesita saber que casi todos los
programas se pueden clasificar dentro de tres categorías principales:
•Software de aplicación.
•Software del sistema.
•Software de red.
13. Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
13
Software de aplicación.
El software de Aplicación es aquel que hace que
el computador coopere con el usuario en la realización de tareas
típicamente humanas, tales como gestionar una contabilidad o
escribir un texto.
Software del sistema
consiste en programas informáticos que sirven para controlar e
interactuar con el sistema operativo.
Suelen clasificarse en sistema operativo, controladores
de dispositivos y programas utilitarios.
•
Software de red.
Es el programa que utilizas para manejar y administrar tu
red . Un ejemplo clave es Windows Server o Linux
Samba, ambos Sistemas Operativos proporcionan
SERVICIOS a los demás Nodos de la red.
14. Lenguajes de programación
Es el lenguaje empleado por el programador para dar
las instrucciones necesarios que el ordenador debe
ejecutar y poder resolver un algoritmo determinado.
Es un idioma artificial diseñado para expresar
computaciones que pueden ser llevadas a cabo por
máquinas como las computadoras. Pueden usarse para
crear programas que controlen el comportamiento
físico y lógico de una máquina, para expresar
algoritmos con precisión, o como modo de
comunicación humana. Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
14
15. Lenguajes de programación
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 15
Son ejemplos de lenguajes de programación: php, prolog, ASP,
ActionScript, ada, python, pascal, c, basic, JAVA, JavaScript,
etc.
16. Tipos de lenguajes
Lenguaje maquina: No necesita traducción, todo se
programa en 0 y 1. Los lenguajes de máquina están
escritos en códigos (código máquina) directamente
inteligibles por la máquina (computadora), siendo sus
instrucciones cadenas binarias (0 y 1).
“Lenguaje de máquina” hace referencia al lenguaje
específico de una computadora, mientras que “código
máquina” hace referencia al modo en que se escriben
los diferentes lenguajes de máquina.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 16
17. Tipos de lenguajes
De bajo nivel o ensamblado: Son aquellos en las que las
instrucciones son casi idénticas a las de un ordenador.
La programación en un lenguaje de bajo nivel tiene como ventajas
una mayor adaptación al equipo, además de la
posibilidad de obtener la máxima velocidad con el mínimo uso de
memoria.
Sin embargo tiene importantes inconvenientes, como la
imposibilidad de escribir código independiente
de la máquina y la mayor dificultad en la
programación y en la comprensión de los
programas.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
17
18. Tipos de lenguajes Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
18
De Medio nivel:
Son aquellos que, basándose en los juegos de instrucciones
disponibles permiten el uso de funciones a nivel aritmético, pero
a nivel lógico dependen de literales en ensamblador. Estos
lenguajes están orientados a procedimientos. Los procedimientos
se componen de procesos.
La palabra bajo no implica que el lenguaje sea inferior a
un lenguaje de alto nivel; se refiere a la
reducida abstracción entre el lenguaje y
el hardware. Por ejemplo, se utiliza este
tipo de lenguajes para programar
controladores de dispositivos.
Ejemplos: C, Basic.
19. Tipos de lenguajes
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
19
De Alto nivel: Son lenguajes que utilizan instrucciones próximas al
lenguaje humano.
Los lenguajes de programación de alto nivel se caracterizan por
expresar los algoritmos de una manera adecuada a la
capacidad cognitiva humana, en lugar de estar orientados a su
ejecución en las máquinas.
Los lenguajes de alto y bajo nivel requieren de conocimientos
específicos de programación y del lenguaje concreto
(vocabulario, gramática y sintaxis) para realizar las secuencias de
instrucciones lógicas
Ejemplos: C++,
Fortran
Cobol, Lisp.
20. Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
20
21. Compilador
Usamos un editor y obtenemos el programa
fuente, y el compilador es el que traduce el
programa al lenguaje máquina. El compilador
internamente ha sido diseñado para traducir.
El compilador obtiene el programa o el fichero
objeto. El compilador tiene que buscar los
errores.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
21
Lenguajes compiladores típicos
son: Pascal, FORTRAN,
COBOL..., hoy día es posible
encontrar también versiones de
compiladores BASIC y de C.
22. Tienen tres características:
Un nombre que los diferencia del resto.
Un tipo que nos determina las operaciones
que podemos hacer con ese dato.
Un valor que puede variar o no a lo largo
de la operación.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
22
23. Pueden ser
Simples: Un elemento (Numéricos, lógicos
y caracteres)
Compuesto: Varios elementos
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 23
24. Acciones
Cada uno de los pasos en los que hemos
descrito un algoritmo. Las acciones son
operaciones elementales que podemos
expresar en un algoritmo.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
24
25. Sentencias
Es una instrucción que podemos expresar
en un lenguaje de programación. La
precisión de la sentencia determina la
precisión de la ejecución del programa. En
otras palabras, las sentencias son las
acciones expresadas en un lenguaje de
programación.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
25
26. Sentencias
En programación, una sentencia es una línea de
código en algún lenguaje de programación. Un
programa está constituido por múltiples sentencias
de programación, lo que es llamado código fuente.
Un algoritmo de programación está constituido por
una o más sentencias de programación.
Las sentencias de programación suelen tener algún
carácter que determina su final, por lo general es un
punto y coma (;) o un punto final (.), y algunas están
separadas simplemente por enters (retorno de carro).
Esto depende del lenguaje de programación que se
esté empleando. Existen lenguajes que no necesitan
un carácter que determine el final de una sentencia.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
26
27. Tipo de sentencias
Secuenciales: En la mayoría de los lenguajes de descripción de software, todas
las sentencias de asigna miento son de naturaleza secuencial. Esto significa que
la ejecución del programa se llevara a cabo de arriba a abajo, es decir siguiendo
el orden en el que se hayan dispuesto dichas sentencias en el programa, por ello
es de vital importancia la disposición de las mismas dentro del código fuente.
Selectivas: Son las que permiten condicionar la ejecución de una o mas
sentencias.
En programación, una sentencia condicional es una instrucción o grupo de
instrucciones que se pueden ejecutar o no en función del valor de una condición.
Los tipos más conocidos de sentencias condicionales son el SI..ENTONCES
(if..then), el SI..ENTONCES..SI NO (if..then..else) y el SEGÚN (case o switch)
Iterativas: Son las que permite conseguir que se ejecuten una o mas veces.
Con las sentencias iterativas lo que logramos es iterar un grupo de
instrucciones, es decir, ejecutar varias veces el mismo grupo de instrucciones
mientras una condición especificada sea cierta.
A estas sentencias también se las llama bucles, y las instrucciones que se repiten
en un bucle se las denomina el cuerpo del bucle.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 27
28. Sentencias de asignación
Son sentencias que como su nombre indica
permite asignar un valor a una variable. Esta
asignación se puede hacer de forma implícita,
al ejecutar una acción cualquiera y de forma
explicita, mediante una expresión matemática.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 28
29. Expresiones
Es la descripción de una o varias operaciones a realizar sobre
una o varias variables.
En programación, una expresión es una combinación de
constantes, variables o funciones, que es interpretada (evaluada)
de acuerdo a las normas particulares de precedencia y asociación
para un lenguaje de programación en particular. Como en
matemáticas, la expresión es su "valor evaluado", es decir, la
expresión es una representación de ese valor.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C
29
30. Tipos de expresiones
Aritméticas: Los operandos que intervienen en
ella son numéricos, el resultado es numérico y los
operadores son aritméticos.
Lógicas: Su resultado es CIERTO ó FALSO. Se
construyen mediante los operadores relacionales y
lógicos.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 30
31. Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 31
32. Precedencias
Determina el orden en el que se evalúan y
ejecutan cada una de las operaciones indicadas
en la expresión.
Se evalúan los paréntesis, pero primero los
mas internos.
Multiplicación, división, modulo, suma, resta
y operadores lógicos.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 32
33. Sentencias de entradas y salidas
Entradas: Permiten asignar a las variables
los valores ingresados por teclado por parte
de los usuarios.
Salidas: Permite presentar en pantalla los
valores de las variables.
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 33
34. GENERAL
NOMBRE Prototipo de un OA para realizar Algoritmos
IDIOMA Español
DESCRIPCION Este OA aclara paso a paso como se realiza un
algoritmo en sus diferentes formas
CICLO DE VIDA
Versión 1.0
Autores Luis Alfonso Rodríguez
Fecha Marzo 25 de 2014
CICLO DE VIDA
FORMATO Presentación de Power Point
TAMAÑO 5 MegaBytes
UBICACIÓN Slidershare .net
REQUERIMIENTO Sistema Operativo Windows o Linus Con Visor de
Power Point o open Power Point
INSTRUCCIONES
DE INSTALACIÓN
No hay
Lic.LuisAlfonsoRodríguez
EspecialistaenMantenimiento,
EnsambleYReparacióndeP.C
34
35. Gracias por haber participado en
el primer contenido temático.
Que Dios les continúe Bendición
Lic. Luis Alfonso Rodríguez
Especialista en Mantenimiento,
Ensamble Y Reparación de P.C 35