La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Algoritmos y Programación. Objetivos de Aprendizaje: Al finalizar esta unidad ud. debe estar en la capacidad de: Definir el propósito y el contenido de.

Presentaciones similares


Presentación del tema: "Algoritmos y Programación. Objetivos de Aprendizaje: Al finalizar esta unidad ud. debe estar en la capacidad de: Definir el propósito y el contenido de."— Transcripción de la presentación:

1 Algoritmos y Programación

2 Objetivos de Aprendizaje: Al finalizar esta unidad ud. debe estar en la capacidad de: Definir el propósito y el contenido de un programa de computadora. Establecer una metodología para resolver problemas de procesamiento de datos. Definir el concepto de dato, los tipos de datos y las funciones incorporadas a los lenguajes de programación. Enumerar las recomendaciones más comunes necesarias para programar con estilo.

3 Introducción a la Programación Actualmente las computadoras son parte importante en la solución de problemas de cualquier área: contabilidad, medicina, administración, etc. Los programas de computadora son parte esencial para la solución de problemas a cualquier nivel. Estas soluciones son llamadas aplicaciones. Los programadores utilizan algún lenguaje de programación para desarrollar las aplicaciones requeridas por los clientes. Los lenguajes de programación sirven como puente de enlace entre el análisis realizado por el equipo de desarrollo y la capacidad de cálculo que ofrece la computadora.

4 El Algoritmo es un proceso para resolver problemas. Fue desarrollado por el matemático persa Abu Jafar Mohammed Ibn Musa Al Khwarizmi. Un algoritmo es una fórmula para resolver un problema. Un algoritmo es un conjunto de acciones o secuencia de operaciones que ejecutadas en un determinado orden resuelven el problema planteado. Un algoritmo es un proceso metódico que define una serie finita de pasos sencillos y sin ambigüedades para la solución de un problema. La programación consiste en adaptar el algoritmo al ordenador. El algoritmo es independiente de la implementación en algún lenguaje de programación. Algoritmo

5 Características de un Algoritmo Un algoritmo debe: Estar bien definido. Ser preciso. Finito.

6 Metodología para Diseñar Algoritmos Un algoritmo es una formula para obtener la solución de un problema. La solución puede ser planteada de diferentes formas. El diseño de un algoritmo es un proceso creativo. No existe un conjunto de reglas que indiquen expresamente cómo escribir un algoritmo en forma correcta.

7 Los pasos para resolver un problema son: 1)Análisis del problema. 2)Diseño del algoritmo. 3)Verificación del algoritmo. Metodología para Diseñar Algoritmos...1

8 Metodología para Diseñar Algoritmos...2 En la Fase de Análisis del Problema se realiza lo siguiente: Identificar el problema. Determinar la información que se debe producir como salida. Identificar la información necesaria para resolver el problema. Identificar los elementos que se tienen y los elementos que se deben solicitar para resolver el problema. Establecer el camino a seguir o la solución que se va implementar.

9 Metodología para Diseñar Algoritmos...3 En la Fase de Diseño del Algoritmo se realiza lo siguiente: Buscar la manera más fácil para simplificar la propuesta. Identificar los procesos más importantes y colocarlos en orden ascendente según su importancia y precedencia (esto sirve como un algoritmo inicial). El algoritmo inicial se va refinando sucesivamente hasta obtener una solución más detallada y fácil de traducir a un lenguaje de programación.

10 Metodología para Diseñar Algoritmos...4 En la Fase de Verificación del Algoritmo se realiza: Verificar que el algoritmo cumpla con los procesos diseñados y produzca el resultado esperado. Realizar una prueba del algoritmo mediante su ejecución manual con datos significativos, además de comprobar si se obtienen los resultados esperados para la salida.

11 Definiciones Básicas Lenguaje de Máquina. Lenguaje de Bajo Nivel: Ensamblador. Lenguaje de Alto Nivel. Compilar. Base de Datos. Sistema Operativo. Almacenamiento.

12 Lenguaje de Máquina Es un lenguaje que puede ser interpretado directamente por los circuitos internos de la máquina y está basado en instrucciones compuestas por secuencias de ceros (0) y unos (1). Ventajas: No requiere traducción, la máquina lo interpreta. Opera directamente con la máquina. Puede ser eficiente en el manejo de los recursos. Desventajas: Difícil de aprender, implementar y mantener. Es único y particular para cada procesador.

13 (Ensamblador). Es un lenguaje fuente para codificar sentencias simbólicas. Un ensamblador convierte cada instrucción en instrucciones de lenguaje de máquina. Ventajas: No es tan complicado como el lenguaje de máquina. Eficiente en el manejo de recursos. Desventajas: Cada procesador tiene su propio juego de instrucciones en ensamblador. Debe ser traducido – ensamblado. Lenguaje de Bajo Nivel

14 Lenguaje de Alto Nivel Es un lenguaje orientado al problema o procedimiento. Son los más cercanos al lenguaje humano. Ejemplo: COBOL, PL/I, FORTRAN, etc. Otros son los lenguajes de Programación Orientado a Objetos (OOPL) : C++, Smalltalk, Java, etc. Ventajas: Son independientes del procesador. Son más fáciles de aprender, implementar y mantener. Tiene un carácter genérico. Desventajas: Menos eficiente en el manejo de recursos. Requiere un proceso de traducción – compilación.

15 - Un programa es un conjunto de instrucciones que, ejecutadas ordenadamente, resuelven un problema. En otras palabras, es la implementación del algoritmo. - Un programa de computadora es una secuencia de instrucciones que le indican al computador que realice las operaciones específicas para lograr el resultado deseado. - Un programa de computadora, para que pueda ser ejecutado debe ser cargado en memoria. - La unidad de procesamiento del ordenador sólo puede trabajar con los datos e instrucciones que residen en la memoria. Programas de Computadora

16 Compilar: “Es traducir un programa escrito en un lenguaje de alto nivel a lenguaje de máquina, que es la forma en que la computadora puede ejecutar las acciones o instrucciones”. El compilador crea un programa objeto y un listado del programa objeto. El programa objeto se usa como la entrada al enlazador para realizar lo que se llama el paso de “edición de enlace”. El enlazador combina el programa objeto recién creado, para producir un programa ejecutable. Los otros archivos objeto generalmente residen en un archivo en disco llamado “Librería de Enlace”. Funcionamiento del Compilador/Enlazador

17 Programa fuente Compilador Enlazador Programa Ejecutable Librerías de Programas Objeto Programa objeto Funcionamiento del Compilador / Enlazador

18 Base de Datos: Es una colección de datos completa e integrada para evitar duplicados, que permite recuperar información para satisfacer a una amplia variedad de usuarios. Sistema Operativo: Es una colección organizada de software que se usa para ayudar y controlar las operaciones de una computadora. Almacenamiento: Se refiere a los dispositivos en que los datos se almacenan para posteriormente ser recuperados. Otras Definiciones

19 Asignación: - Como Desarrollar un Programa de Computadora - Pasos de un Programa de Computadora

20 Datos y operadores

21 Dato - El dato es cualquier objeto o elemento de información que se usa a través de las diversas operaciones dentro de un programa. - Son los elementos sobre los que se opera cuando se efectúa una instrucción. - Un dato tiene un nombre que lo identifica y distingue de los demás elementos del programa. - El nombre no es más que una forma de referenciar la dirección de memoria que ocupa el dato.

22 Ejemplos 14 22º C 23 m 31-10-2006 Enero Petra Pérez Son representaciones simbólicas de objetos, hechos, instituciones, conocimientos. Dato

23 Tipo de Dato - El tipo de dato es una definición que identifica los valores válidos para un conjunto de datos y las operaciones que sobre ellos se pueden realizar. - Normalmente, se puede establecer una relación de orden sobre los datos de naturaleza escalar o con valores determinísticos. Cada tipo de dato tiene una representación en el computador. - Para cada tipo de dato el computador reserva una cantidad de memoria para almacenarlo.

24 Los tipos primitivos numéricos más importantes son: - Entero: es un subconjunto finito del conjunto matemático de los números enteros. No tiene parte decimal. - Real: es un subconjunto finito del conjunto matemático de los números reales, tienen signo y parte decimal. - Lógico o booleano: Es aquel que sólo puede tomar uno de los dos valores, verdadero o falso (1 ó 0). Las operaciones lógicas retornan un valor lógico. Tipo de Dato Primitivo Numérico

25 Clasificación de los Tipos de Datos Los tipos de datos se clasifican en: Primitivos: tipos básicos o simples predefinidos en el sistema. Pueden ser numérico, lógico o carácter. Definidos por el usuario: tipos de datos complejos definidos por el programador.

26 El tipo de dato primitivo carácter: - Es el conjunto finito y ordenado de caracteres que reconoce la computadora: letras, dígitos, caracteres especiales, código ASCII y UNICODE. - Los valores usualmente se representan dentro de un par de comillas simples. - Se puede usar el código del carácter o su posición dentro del conjunto de caracteres válidos que se esté usando. Clasificación de los Tipos de Datos

27 Constantes y Variables Constantes: - Son instancias de un tipo de dato que tienen un valor fijo que se le da cuando se define la constante. - No puede ser modificado durante la ejecución del programa o corrida del algoritmo. Variables: - Son instancias de un tipo de dato, cuyo valor puede cambiar durante la ejecución del programa o corrida del algoritmo. - No varía su nombre y su tipo. -Existen Variables: Acumuladoras. Contadoras.

28 - Las variables deben ser definidas o declaradas antes de usarlas. - Una variable se declara dando un nombre significativo y tipo. - El nombre o identificador, es una palabra que no es propia del lenguaje, la construye y usa el programador basándose en ciertas reglas. - El nombre, por lo general, tiene que empezar por una letra, el tamaño y caracteres permitidos para formar el identificador dependen del lenguaje. Variables

29 - Las constantes pueden llevar un nombre asociado, si no lo tienen se llaman literales. - El valor de la constante se debe suministrar al definir la constante y no puede cambiar a lo largo de la ejecución del programa. - El tipo de dato de la constante se especifica o no en la declaración dependiendo del lenguaje. - Ejemplo de definición de una constante: Const PI=3,1416 - La ventaja de las constantes con nombre, es que se puede usar el nombre en cualquier lugar del programa y luego el compilador lo sustituye por su valor. Constantes

30 Asignacion: - Variables y Constantes en la Memoria (Funcionamiento) - Expresiones: Tipos y Operadores(¿Cuales Son?)

31 Expresiones Tipos y Operadores

32 Expresiones: Tipos y Operadores Una expresión es una combinación de constantes, variables, signos de operación, paréntesis y nombres especiales de funciones estándares, con un sentido unívoco y definido dando como resultado un único valor. Toda expresión tiene asociado un tipo que se corresponde con el tipo del valor que devuelve la expresión cuando se evalúa. Existen dos tipos de expresiones: –Numéricas. –Lógicas.

33 Expresiones Numéricas Operadores Aritméticos Las expresiones numéricas son una combinación de variables y constantes numéricas con operadores aritméticos, que al evaluarse devuelven un valor numérico. Los operadores aritméticos se utilizan en las expresiones numéricas. Algunos de los operadores aritméticos más usados son: –+ Suma – - Resta –*Multiplicación –/División

34 Otros operadores aritméticos soportados en algunos lenguajes de programación son: –Resto: devuelve el resto de una división entera. –División entera: devuelve el cociente de una división en la que no se consideran los decimales. –Potencia: devuelve el valor de una base elevada a una potencia dada. Todos los operadores estudiados son binarios, utilizan dos operandos y el operador se sitúa en medio de ambos operandos. Ejemplo: X 1 + X 2 Otros Operadores Aritméticos

35 Evaluación de Expresiones El resultado que retorna de la evaluación de una expresión depende del orden en que se evalúen los operadores. Ejemplo: –Sea la siguiente expresión aritmética: 2 + 3 * 2 + 3 –Si se evalúa en el orden de aparición de los operadores: (((2 + 3) * 2) + 3) El resultado es = –Si se evalúa primero la suma (+) y luego la multiplicación (*): (2 + 3) * (2 + 3) El resultado = –Si se evalúa primero la multiplicación y luego la suma: 2 + (3 * 2) + 3 El resultado = 13 25 11

36 Reglas de Precedencias Para evaluar las expresiones, cada operador tiene una prioridad o regla de precedencia para su evaluación dentro de la expresión. Cada lenguaje puede establecer sus propias reglas de prioridad o precedencia de operadores. El orden de precedencia más usado para los operadores aritméticos básicos, es: 1- ^ 2- *, /, div y mod 3- + y –

37 Expresiones Lógicas Una expresión lógica es aquella que sólo puede devolver uno de dos valores: Verdadero o Falso. Los operadores que pueden aparecer en una expresión lógica son de dos tipos: lógicos o relacionales. Los operadores lógicos sólo trabajan sobre expresiones o datos que retornan valores booleanos. Los operadores relacionales trabajan con expresiones numéricas para realizar comparaciones que retornan un valor booleano. Las expresiones combinan tanto los operadores lógicos como relacionales, se evalúa más de una condición o relación por medio los de operadores lógicos.

38 Operadores Relacionales Los operadores relacionales más utilizados son: – < menor que – > mayor que = igualdad (en C/C++/PHP/JAVA: ==)‏ <> diferente (en C/C++/PHP/JAVA: !=)‏ ≤ menor o igual que (en C/C++/PHP/JAVA: <=)‏ ≥ mayor o igual que (en C/C++/PHP/JAVA: >=)‏

39 Ejercicio sobre Expresiones Lógicas Ejercicio: Evalúe las siguientes expresiones si se le asigna a: –la variable x el valor de 2. –la variable y el valor de 4. 1. x == y 2. x <> y 3. y > x 4. x >= y

40 Operadores Lógicos Los operadores lógicos se utilizan para evaluar más de una condición al mismo tiempo. OperaciónNombreResultado a and bYCierto si a y b son ciertos. a or bOCierto si a o b son ciertos. a xor bO EXCLUSIVOCierto si a o b son ciertos pero no son ambos | aNOCierto si a es falso a && bYCierto si a y b son ciertos. a || bOCierto si a ó b son ciertos.

41 Tabla de Verdad para Operadores Lógicos Tabla de Verdad FFFFF VVFVF VVFFV FVVVV XOrOrAndOperando 2Operando 1 Leyenda: V=Verdadero F=Falso

42 Ejercicio: Si “x” representa “1 > 2” (FALSO). “y” representa “4 < 8” (VERDADERO). Evalúe la siguientes expresiones: 1. NOT x 2. x AND y 3. y OR x 4. (NOT x) AND y 5. x XOR y Ejercicio sobre Operadores Lógicos

43 Asignación: - Asignación (Operación y Fases) - Funciones incorporadas (uso)


Descargar ppt "Algoritmos y Programación. Objetivos de Aprendizaje: Al finalizar esta unidad ud. debe estar en la capacidad de: Definir el propósito y el contenido de."

Presentaciones similares


Anuncios Google