La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Capítulo 3 Fundamentos de Programación Corina Flores Villarroel Marzo, 2013.

Presentaciones similares


Presentación del tema: "Capítulo 3 Fundamentos de Programación Corina Flores Villarroel Marzo, 2013."— Transcripción de la presentación:

1 Capítulo 3 Fundamentos de Programación Corina Flores Villarroel Marzo, 2013

2 Introducción Para resolver problemas tanto los algoritmos como los programas operan con datos. Los datos representan objetos del mundo real que permiten modelar aspectos de un problema que se desea resolver.

3 Introducción Por ejemplo, un sistema de administración de estudiantes de una universidad, automatiza los procesos de ingreso y seguimiento de las actividades académicas de los estudiantes, tales como: inscripción, cursado, exámenes, etc., ¿qué datos representarán a las entidades que intervienen en estos procesos?, el estudiante, la carrera, las materias, etc.

4 Introducción Los datos reales son difíciles de representar en una computadora, dado que es una máquina digital binaria con capacidad de operar solo unos y ceros.

5 Introducción La representación de los datos, aun los más simples, como los números, las letras, un nombre o un color, requiere una transformación desde el mundo real a alguna forma de representación binaria que pueda ser interpretada por la computadora

6 Introducción Datos más complejos como una imagen, una canción o la trayectoria de un misil, también son representados en forma binaria. Sin embargo, la forma de modelarlo e interpretarlo requerirá de un análisis cuidadoso por parte de quien escribe el programa.

7 Introducción Por lo tanto, las dos cuestiones más importantes que debe enfrentar quien debe escribir un algoritmo o programa para resolver un problema mediante una computadora son:

8 Introducción Definir el conjunto de acciones, pasos o instrucciones cuya ejecución ordenada conduce a la solución. Elegir la representación adecuada de los datos del problema.

9 Objetivos del tema En este tema centraremos nuestra atención en el trabajo con los datos del problema y su representación.

10 Objetivos del tema ¿Qué datos se pueden considerar fijos (constantes) para simplificar el problema? ¿Qué datos son variables? ¿Qué datos se deben calcular?

11 Objetivos del tema En este tema abordaremos también las formas de representar los datos de acuerdo a su contenido. a objeto de asumir una representación formal en términos del lenguaje de programación que adoptaremos en la fase de codificación, que para propósitos de nuestra asignatura será Java.

12 Variables Al momento de crear un algoritmo para dar una determinada solución a un problema ya sea en el área de matemáticas, de informática, de la medicina o de cualquier otro campo del saber, lo más probable es que nos encontremos ante estas posibilidades:

13 Variables Recibir o ingresar datos Procesar los datos que han sido ingresados por el usuario, y Almacenar o guardar datos de manera que podamos esos dato(s) volver a utilizar para hacer cualquier otra tarea dentro del algoritmo, mediante las conocidas variables.

14 Variables En programación, las Variables son espacios de trabajo (contenedores) reservados para guardar datos (valores).

15 Variables Como su mismo nombre lo dice, las variables pueden cambiar de un valor previamente asignado al momento de declararlas a cualquier otro en un determinado momento de la ejecución del algoritmo/programa.

16 Variables Ingresamos X = 0Sumamos X = X +12 X = Almacenamos en X el resultado El valor de una Variable puede cambiar en algún paso del Algoritmo o permanecer invariable; por lo tanto, el valor que contiene una variable es el del último dato asignado a ésta.

17 Variable Ej: Sea el algoritmo que calcula el área de cualquier triángulo rectángulo 1: Algoritmo AreaTrianguloRectangulo 2: Inicio 3: area, div,base, altura: entero // declaración de variables 4: area 0; // (Asignar cero a la variable "area") 5: div 2; // (Asignar el número 2 a la constante "div") 6: leer altura // (Leer la altura del triángulo y guardar en la variable "altura") 7: leer base // (Leer la altura del triángulo y guardar en la variable "base") 8: area base * altura; //Guardar en la variable "area"el valor de multiplicar "base" por "altura" 9: area area/div; //Guardar en la variable "area"el valor de dividir "area" entre "div" 10: escribir area; //Escribir el valor de la variable "area". 11: Fin.

18 Variable

19 Ciclo de vida de una variable Toda variable sigue pasa por tres estados durante la ejecución de una algoritmo o programa: Declaración Inicialización Utilización Estos tres aspectos se ilustran en el ejemplo Algoritmo AreaTrianguloRectangulo resaltadas con colores. Gráficamente el ciclo de una variable se puede representar:

20 Declaración de variables Para declarar VARIABLES, se sigue la siguiente sintaxis: tipoDato nombreVARIABLE; tipoDato identificador;

21 Tipos de Datos Tipos de datos Simples Enteros Numéricos Reales Caracter Lógico No Numéricos

22 Tarea Averiguar los tipos de datos permitidos en JAVA Presentar en formato de tabla o esquema Su presentación es OBLIGATORIA En dos ejemplares.

23 Nombres de variables Importante!, para tomar en cuenta al momento de nombrar las variables.

24 Nombres de Variables Ejemplo de nombres de variables.

25 Ejemplo de declaración Recordemos la sintaxis: tipoDato nombreVARIABLE; En pseudocódigo salario : real En código Java double salario ;

26 Inicialización Es la asignación de contenido a una variable. Esta operación se hará escribiendo el nombre o identificador de variables seguido de un signo igual y del contenido a asignar, entrecomillado en el caso de que sea texto. Así: En código se tiene: salario =0.0; horasTrabajadas = 0.0; nombreEmpleado = En código se tiene: salario =0.0; horasTrabajadas = 0.0; nombreEmpleado = En pseudocódigo el signo = se escribe con salario 0 horasTrabajadas 0 nombreEmpleado En pseudocódigo el signo = se escribe con salario 0 horasTrabajadas 0 nombreEmpleado

27 Utilización Se refiere al momento en el que se puede asignar contenido a una variable salario =15.2; horasTrabajadas = ; nombreEmpleado = Juan Perez En pseudocódigo el signo = se escribe con salario 15.2 horasTrabajadas nombreEmpleado Juan Perez

28 Utilización Cuando las variables declaradas son utilizadas en los procesos En términos de código salario = salario * horasTrabajadas; System.out.println(nombreEmpleado + gana + salario + Bs. al mes); En términos de código salario = salario * horasTrabajadas; System.out.println(nombreEmpleado + gana + salario + Bs. al mes); En términos de pseucódigo salario salario * horasTrabajadas escribir(nombreEmpleado + gana + salario + Bs. al mes) En términos de pseucódigo salario salario * horasTrabajadas escribir(nombreEmpleado + gana + salario + Bs. al mes)

29 Ciclo de vida de una variable

30 Constantes Tanto los algoritmos como los programas contienen ciertos valores que no deben cambiar durante la ejecución del programa. Tales valores se llaman constantes. Existen diferentes tipos de constantes, entre los que se citan:

31 Constantes Declaración de constantes final int nroCuenta = 33548; final String estado = encendido;

32 Expresiones Una expresión es una combinación de operadores y operandos. Los datos u operandos pueden ser constantes, variables y llamadas a funciones. Donde: A y B son operandos + el operador Además, dentro de una expresión pueden encontrarse subexpresiones encerradas entre paréntesis. Por ejemplo, la siguiente expresión matemática es válida en programación: x +(b 3) * cos(α )

33 Ejecución de una expresión Cuando se ejecuta una instrucción de código que contiene una expresión, ésta se evalúa. Al evaluarse la expresión toma un valor que depende del valor asignado previamente a las variables, las constantes y funciones utilizadas, y la secuencia de la ejecución de las operaciones correspondientes. Este valor resultante de la evaluación de la expresión será de un determinado tipo de dato

34 Ejecución de una expresión Ejemplo: // declaramos variables suma::entero; coordX, coordY:entero; // asignamos valores a variables coordX = 76; coordY = -33; // Evaluando expresiones coordX = coordX/2; suma = pow ((coordX + coordY), 2); // suma toma el valor de 25 resultado de evaluar la expresión

35 Tipos de expresiones Resultados de expresiones AritméticasNumérico RelacionalesLógico o booleano LógicasLógico o booleano Caractercaracter

36 Operadores Los operadores son símbolos que indican cómo se deben manipular los operandos. Los operadores junto con los operandos forman una expresión, que es una fórmula que define el cálculo de un valor.

37 Operandos Los operandos pueden ser constantes, variables o llamadas a funciones, siempre que éstas devuelvan algún valor.

38 Ejemplo (3 + 10) * (a / b ) + cos(x) donde: + * / son operadores 3 10 a b x cos son operandos

39 Tipos de Operadores Existen 3 tipos: 1.Operadores aritméticos 2.Operadores relacionales 3.Operadores lógicos » Operador AND » Operador OR » Operador NOT

40 Niveles de prioridad de los operadores Una expresión puede contener distintos tipos de operadores mientras cada operador trabaje con operandos del tipo adecuado. La pregunta que surge a continuación es: ¿qué operación de las que se pueda encontrar en una expresión se realiza antes que las demás?

41 Niveles de prioridad de los operadores Los niveles de prioridad entre operadores en una misma expresión se resumen en la siguiente Tabla. Nivel de prioridad Operadores 1 Paréntesis (que, en realidad, no es un operador, pero sirve para dar prioridades a operaciones determinadas dentro de una expresión que contenga varias operaciones) 2No 3* / div % 4+ - or and 5= <> > = <=

42 Estructura de un algoritmo Un algoritmo/programa consta de dos componentes: – Cabecera del algoritmo/programa, y – Un cuerpo o bloque de algoritmo/programa

43 Estructura de un algoritmo La cabecera del algoritmo/programa, es una acción simple que comienza con la palabra algoritmo, seguido por el nombre. Ejemplo en pseudocodigo: algoritmo PagoSalarioEmpleados Class PagoSalarioEmpleados Ejemplo en codigo para un programa

44 Estructura de un algoritmo El cuerpo de algoritmo/programa, es el resto del programa y consta de tres componentes o secciones: las acciones de declaración, las acciones de inicialización y, grupo de acciones ó instrucciones a ejecutar.

45 Estructura de un algoritmo Declaración refiere no solo a la declaración de variables sino también de constantes Inicialización paso en el que se asignan valores iniciales tanto a variables como a constantes

46 Estructura de un algoritmo instrucciones de inicio/fin de proceso instrucciones de lectura instrucciones de escritura instrucciones de bifurcación instrucciones de repetición Bloque de instrucciones que puede contener desde:

47 Estructura de un algoritmo

48 Normas de escritura Ejemplo Realizar un algoritmo que permita multiplicar, dividir, sumar y restar dos decimales que el usuario ingresa por el teclado.

49 Ejemplo Analizando … Paso 1. Los datos de entrada son dos de tipo decimal, que el usuario debe ingresar Paso 2. Los procesos de transformación para el cálculo de los resultados son las operaciones aritméticas de multiplicar, dividir, sumar y restar. Estas operaciones se almacenarán cada una en variable diferente. Paso 3. Se mostrarán los resultados hallados cada uno con el respectivo mensaje.

50 Escribiendo el algoritmo … Algoritmo DosNumeros // Primer paso: Declaración de variables real num1; real num2; real multi, divis, resta, suma; Inicio escribir(" Ingrese un número: ); leer num1; escribir(" Ingrese otro número: ); leer num2; // Segundo paso: realizamos las operaciones multi=num1*num2 divi= num1/num2 resta= num1-num2 suma = num1+num2 // Tercer paso: mostramos los resultados escribir("la suma es:", suma) escribir("la resta es:",resta) escribir("la multiplicación es:",multi) escribir("la división es:",divi) Fin

51 Algunos tips … 1.Tres partes tiene un algoritmo: a)Entrada = Información proporcionada al algoritmo. b)Proceso = operaciones o cálculos necesarios para encontrar la solución al problema c)Salida = respuesta dada por el algoritmo Corina Flores Villarroel - UMSS51

52 Algunos tips … 2. Para escribir un algoritmo: a)Aplicar el diseño descendente. Comenzar describiendo los pasos más generales y dividir éste en subproblemas. Ejemplo: Corina Flores Villarroel - UMSS52 ¿Qué hacemos para ver una película El ataque en el cine? ir al cine comprar una entrada (billete o ticket) ver la película regresar a casa Pero … estas son cuatro acciones básicas, que necesitan ser mejor especificadas … entonces ¿qué debemos hacer?

53 Algunos tips … 3.Descomponer en pasos más simples, a esto se llamarefinamiento sucesivo, ya que cada acción se dividirá en una o varias sentencias que ejecutarán una tarea en particular Corina Flores Villarroel - UMSS53 ¿Cómo puede ser un primer refinamiento para el caso del ejemplo?

54 Corina Flores Villarroel - UMSS54 1.Inicio 2.Ver la cartelera de cines en el periódico 3.Si no proyectan El ataque entonces 3.1 decidir otra actividad 3.2 ir al paso 7 Si_no 4.Ir al cine donde proyectarán la película y comprar boleto Fin_si 5.Si hay cola 5.1 ponerse en ella 5.2 mientras haya personas delante hacer avanzar en la cola fin_mientras Fin_si 6.Si hay localidades entonces 6.1 comprar entrada 6.2 pasar a la sala 6.3 Localizar la(s) butaca(s) 6.4 mientras proyectan la película hacer ver la película fin_mientras 6.5 abandonar la sala Sino protestar Fin_si 7.volver a casa 8. fin

55 Algunos tips … 3.1 Si miramos el algoritmo escrito, encontramos algunas palabras escritas en negrita, estas palabras se consideran como reservadas (si no, mientras, etc) ya que describen a estructuras de control ya sea de decisión o de repetición. 5. Verificación del algoritmo, para comprobar si el resultado es correcto y esperado, para lo que se puede utilizar la prueba de escritorio Corina Flores Villarroel - UMSS55

56 Algunos tips … Corina Flores Villarroel - UMSS56 Trazar en una hoja de papel una tabla con filas y columnas, en las columnas se colocar las variables y en las filas las líneas de código del algoritmo, luego ejecutar paso a paso las instrucciones y anotar el resultado obtenido en la fila y columna correspondiente. La prueba termina cuando se ejecuta la última instrucción. prueba de escritorio Consiste en …

57 Algunos tips … 1.Tres partes tiene un algoritmo: a)Entrada = Información proporcionada al algoritmo. b)Proceso = operaciones o cálculos necesarios para encontrar la solución al problema c)Salida = respuesta dada por el algoritmo Corina Flores Villarroel - UMSS57

58 Algunos tips … 2. Para escribir un algoritmo: a)Aplicar el diseño descendente. Comenzar describiendo los pasos más generales y dividir éste en subproblemas. Ejemplo: Corina Flores Villarroel - UMSS58 ¿Qué hacemos para ver una película El ataque en el cine? ir al cine comprar una entrada (billete o ticket) ver la película regresar a casa Pero … estas son cuatro acciones básicas, que necesitan ser mejor especificadas … entonces ¿qué debemos hacer?

59 Algunos tips … 3.Descomponer en pasos más simples, a esto se llamarefinamiento sucesivo, ya que cada acción se dividirá en una o varias sentencias que ejecutarán una tarea en particular Corina Flores Villarroel - UMSS59 ¿Cómo puede ser un primer refinamiento para el caso del ejemplo?

60 Corina Flores Villarroel - UMSS60 1.Inicio 2.Ver la cartelera de cines en el periódico 3.Si no proyectan El ataque entonces 3.1 decidir otra actividad 3.2 ir al paso 7 Si_no 4.Ir al cine donde proyectarán la película y comprar boleto Fin_si 5.Si hay cola 5.1 ponerse en ella 5.2 mientras haya personas delante hacer avanzar en la cola fin_mientras Fin_si 6.Si hay localidades entonces 6.1 comprar entrada 6.2 pasar a la sala 6.3 Localizar la(s) butaca(s) 6.4 mientras proyectan la película hacer ver la película fin_mientras 6.5 abandonar la sala Sino protestar Fin_si 7.volver a casa 8. fin

61 Algunos tips … 3.1 Si miramos el algoritmo escrito, encontramos algunas palabras escritas en negrita, estas palabras se consideran como reservadas (si no, mientras, etc) ya que describen a estructuras de control ya sea de decisión o de repetición. 5. Verificación del algoritmo, para comprobar si el resultado es correcto y esperado, para lo que se puede utilizar la prueba de escritorio Corina Flores Villarroel - UMSS61

62 Algunos tips … Corina Flores Villarroel - UMSS62 Trazar en una hoja de papel una tabla con filas y columnas, en las columnas se colocar las variables y en las filas las líneas de código del algoritmo, luego ejecutar paso a paso las instrucciones y anotar el resultado obtenido en la fila y columna correspondiente. La prueba termina cuando se ejecuta la última instrucción. prueba de escritorio Consiste en …

63 Normas de escritura Todo algoritmo tiene su nombre Todos los algoritmos comienzan por la palabra inicio seguido de un grupo de sentencias y termina con la palabra fin. Por norma se declaran todas las variables al inicio del programa Una sentencia termina con ; Se debe indentar o tabular a la derecha si hay un nuevo grupo de sentencias, así se facilita no solo en la lectura sino también la revisión del algoritmo. Los comentarios comienzan con //


Descargar ppt "Capítulo 3 Fundamentos de Programación Corina Flores Villarroel Marzo, 2013."

Presentaciones similares


Anuncios Google