La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Tema 8: Programación estructurada. 8.1. Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.

Presentaciones similares


Presentación del tema: "Tema 8: Programación estructurada. 8.1. Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar."— Transcripción de la presentación:

1 Tema 8: Programación estructurada

2 8.1. Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar en el mundo que nos rodea nos da una base sólida para entenderlo. Además facilita que los alumnos lleguen a ser capaces de hacer una abstracción de problemas que no aprenden en ningún otro ámbito de su vida. Saber programar es una necesidad. http://www.youtube.com/watch?v=zZrBUZMiDbI

3 8.2. Definiciones previas: 8.2.1. Algoritmo Podemos definir como algoritmo una serie de pasos, con un orden concreto, que se deben seguir para resolver cualquier tipo de problema. Un algoritmo sería qué hay que hacer desde que te levantas para llegar al colegio puntual.

4 8.2. Definiciones previas: 8.2.1. Algoritmo 1. Apagar el despertador 2. Levantarse de la cama 3. Ir al baño 4. Desnudarse 5. Ducharse 6. Secarse 7. Vestirse 8. Hacer el desayuno 9. Desayunar 10. Lavarse los dientes 11. Salir de casa 12. Llegar al colegio

5 8.2. Definiciones previas: 8.2.2. Pseudocódigo Un pseudocódigo es un tipo de lenguaje que está entre el lenguaje humano y un lenguaje de programación. Estructuralmente sigue las normas de un lenguaje de programación, sin sujetarse a ninguno en concreto, pero diseñado para la lectura humana. Una vez que se ha diseñado el algoritmo, podemos escribirlo como pseudocódigo. Ejemplo: Dados dos números, introducidos por teclado, que salga por pantalla si su suma es mayor que 10.

6 8.2. Definiciones previas: 8.2.2. Pseudocódigo Ejemplo: Dados dos números, introducidos por teclado, que salga por pantalla si su suma es mayor que 10. Inicio Num1, Num2, Suma = 0 Leer Num1 y Num2 Suma = Num1 + Num2 Si Suma > 10 Escribir en pantalla Suma “es mayor que 10” Si no Escribir por pantalla Suma “es menor que 10 Fin

7 8.2. Definiciones previas: 8.2.3. Organigrama Para poder representar gráficamente un algoritmo podemos utilizar un diagrama de flujo u organigrama. La ventaja que nos ofrece este tipo de representación es tener una visión global del problema y donde se nos muestra claramente si estamos cometiendo algún error. Estos organigramas tienen símbolos concretos para representar acciones concretas.

8 8.2. Definiciones previas: 8.2.3. Organigrama

9

10 8.3. Lenguajes de programación Un lenguaje de programación es un idioma que entiende un ordenador para lo cual sigue una serie de reglas y normas. Los lenguajes de programación los podemos dividir en: - Lenguajes de bajo nivel - Lenguajes de alto nivel

11 8.3. Lenguajes de programación 8.3.1. Lenguajes de bajo nivel Se consideran lenguajes de bajo nivel el lenguaje máquina y el lenguaje ensamblador. Estos lenguajes dependen del hardware, dependen de la máquina donde estén programados. Requieren un gran número de instrucciones por ser estas muy simples.

12 8.3. Lenguajes de programación 8.3.1. Lenguajes de bajo nivel El lenguaje máquina es el lenguaje que entiende el ordenador, utiliza el código binario (0 y 1), por lo cual no necesita traducción. El lenguaje ensamblador es un paso más a la hora de simplificar la programación. Utiliza palabras clave (abreviaturas en inglés) para hacerlo comprensible al programador. Necesita de un traductor que lo pase al lenguaje máquina.

13 8.3. Lenguajes de programación 8.3.2. Lenguajes de alto nivel Al contrario que los de bajo nivel no dependen de la máquina en la que estén, con lo cual el mismo programa es portable. Las instrucciones se asemejan mucho más al lenguaje humano de tal manera que es mucho más fácil de programar. Además suministran librerías con las funciones más frecuentes. Para que el ordenador las pueda entender necesitamos un compilador que traduzca este lenguaje al que si entiende la computadora.

14 8.3. Lenguajes de programación 8.3.2. Lenguajes de alto nivel Dentro de los lenguajes de alto nivel vamos a destacar: - Lenguajes estructurados - Lenguajes lógicos - Lenguajes orientados a objetos - Lenguajes de 4ª generación

15 8.3.2. Lenguajes de alto nivel: Lenguajes estructurados Los lenguajes estructurados surgieron para facilitar la programación y el mantenimiento, al ser más legibles son más fáciles de entender y localizar los errores. Utiliza tres estructuras: Sentencia, selección (instrucción condicional) e iteración. Ejemplos: Pascal, C…

16 8.3.2. Lenguajes de alto nivel: Lenguajes lógicos Los lenguajes lógicos pretenden seguir la lógica matemática, mucho más sencilla de expresar problemas complejos y de resolver mediante la aplicación de reglas, hipótesis y teoremas. Ejemplo: Prolog

17 8.3.2. Lenguajes de alto nivel: Lenguajes orientados a objetos Se trabaja con objetos y clases cuya característica más simple de entender es la herencia. Ejemplos: C++, C#, Java

18 8.3.2. Lenguajes de alto nivel: Lenguajes de 4ª generación Son lenguajes creados para solucionar problemas concretos y basándose en cómo se resuelve éste más que en las características del lenguaje de programación en el cual se va a desarrollar. Ejemplo: SQL

19 8.4. Prog. Estructurada. Lenguaje C 8.4.1. Declaración de datos Constante: dato cuyo valor no cambia nunca durante la ejecución del programa. Variable: dato cuyo valor varía tantas veces como sea necesario durante la ejecución de un programa. A la hora de nombrar un dato hay que tener en cuenta que no se pueden dejar espacios en blanco, con lo que se suele usar o bien en guion bajo (_) o intercalar mayúsculas (nombrePersona). No se pueden utilizar palabras clave, ya reservadas para otras cosas.

20 8.4. Prog. Estructurada. Lenguaje C 8.4.2. Tipos de datos

21 8.4. Prog. Estructurada. Lenguaje C 8.4.3. Operaciones aritméticas

22 La prioridad de las operaciones es: Potencias Multiplicaciones y divisiones Sumas y restas Cuando hay varias operaciones juntas sin paréntesis se evalúan de izquierda a derecha. Los paréntesis alteran las prioridades.

23 8.4. Prog. Estructurada. Lenguaje C 8.4.4. Operadores relacionales Los operadores relacionales y los operadores lógicos tienen como resultado verdadero (true) o falso (false). Si a = 2; b = 5; c = 8; d = 12

24 8.4. Prog. Estructurada. Lenguaje C 8.4.5. Operadores lógicos

25 8.4. Prog. Estructurada. Lenguaje C 8.4.6. Estructuras condicionales Estructura If Sirve para ejecutar una/s u otra/s sentencia/s según se cumpla una condición o no. La estructura if se puede anidar, es decir, puede haber un if dentro de otro if. If condicion Sentencia1 Sentencia2 … else Sentencia3 Sentencia4 … If a>b a/b else b/a

26 8.4. Prog. Estructurada. Lenguaje C 8.4.6. Estructuras condicionales Estructura switch Se usa cuando tenemos más de dos condiciones o una variable que pueda tomar múltiples valores y dependiendo de la condición que se cumpla o el valor que toma se ejecuta una u otra sentencia. La sentencia Default no es obligatoria, y sólo se ejecutará si no se han ejecutado las sentencias anteriores. Es una manera de controlar que siempre se va a salir de la estructura case.

27 8.4. Prog. Estructurada. Lenguaje C 8.4.6. Estructuras condicionales Estructura switch switch (expresion){ case condicion1: Sentencia1 break; case condicion2: Sentencia2 break; case condicion3: Sentencia3 break; … default: sentencias } switch (curso){ case 1: Print “Primero de ESO”; break; Case 2: Print “Segundo de ESO”; break; Case 3: Print “Tercero de ESO”; break; Case 4: Print “Cuarto de ESO”; break; Default: Print “Se ha cometido un error al introducir el curso”; }

28 8.4. Prog. Estructurada. Lenguaje C 8.4.7. Estructuras repetitivas Sentencia for La sentencia For nos permite crear bucles con un número de iteraciones (repeticiones) definidas previamente; se utiliza en aquellos casos en los que se sabe el número exacto de veces que se ha de repetir una o varias instrucciones. La variable de control que nos indica cuando va a salirse del bucle es una variable contador que se va incrementando a medida que se van completando los bucles, al alcanzar un valor final predeterminado se sale del bucle. Al menos se va a ejecutar una vez. Esta estructura es muy cómoda para hacer recorridos de una lista.

29 8.4. Prog. Estructurada. Lenguaje C 8.4.7. Estructuras repetitivas Sentencia for For (inicialización; condición; iteración){ Sentencia1 Sentencia2 … } for (contador = 0; n>40; n++){ print (contador); } Este procedimiento añade a una lista los números pares del 0 al 40.

30 8.4. Prog. Estructurada. Lenguaje C 8.4.7. Estructuras repetitivas Sentencia While Ejecuta un bucle mientras se cumpla una condición, puede no ejecutarse nunca si la condición nunca se cumple. while (condicion){ Sentencia1 Sentencia2 … } contador=0 while (contador<40){ print (contador); contador=contador+ 2; } Este procedimiento añade a una lista los números pares del 0 al 40.


Descargar ppt "Tema 8: Programación estructurada. 8.1. Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar."

Presentaciones similares


Anuncios Google