Capítulo 3 Fundamentos de Programación

Slides:



Advertisements
Presentaciones similares
Una estructura de control permite controlar el flujo de la ejecución de instrucciones. Con estas estructuras, el programador puede determinar el orden.
Advertisements

Juan F. Velazquez Mayra E. Beltran Jaime Lopez
Metodología de programación paralela
While Leonel Morales Díaz Ingeniería Simple Disponible en: Copyright 2008 by Leonel.
Subrutinas y Funciones Leonel Morales Díaz Ingeniería Simple Disponible en: Copyright.
EL LENGUAJE DE PROGRAMACIÓN C
Trabajo con subconsultas
Ilustre Municipalidad de Nogales Unidad Técnico Pedagógica Departamento de Lengua Castellana y Comunicación Liceo Juan Rusque Portal Tarea de Lenguaje.
Pasos a seguir para Utilizar las listas predefinidas por el I.N.E..... Generar sus propias listas.... Exportar la información a diferentes formatos....
Ciclo de Preparación para la Jubilación
Uso de los corchetes ¿Qué hago si entre una columna y la siguiente no se visualiza todo el texto?
INSTITUTO TECNOLOGICO SUPERIOR DE CALKINI, EN EL ESTADO DE CAMPECHE
1 Introducción Seminario sobre las prácticas curriculares en América Central Guatemala, Abril 2006 Xavier ROEGIERS y Alexia PEYSER.
Lenguajes de Programación Soluciones a pruebas de nivel
Conectores gramaticales
COMO USAR LA PC POR PIMERA VEZ SARAITH MACHORRO PACHECO 28 JOSE ALBERTO LOPEZ RAMIREZ 27 CAPACITACION DE INFORMATICA GRUPO 302.
INTEGRIDAD, INTEGRIDAD REFERENCIAL
Examen FRAD Empezar. 1. ¿Cu á l es la diferencia entre FRAD y FRANAR? 1.FRAD son las siglas de un grupo de trabajo de OCLC y FRANAR las siglas de un grupo.
Microsoft Office Power Point, es una herramienta que nos proporciona Microsoft, para editar presentaciones graficas, de tal forma que se nos feliciten.
Instrucciones de Estudios de física a través de Edcanvas.
Libro de Clases Electrónico Administrativo OTEC
NUEVAS COMPERTENCIAS Alfabetización digital Sociedad de la información Uso de TIC Nueva cultura que supone nuevas formas de ver y entender el mundo Formación.
UNIVERSIDAD JUÁREZ DEL ESTADO DE DURANGO FACULTAD DE CIENCIAS QUÍMICAS MANUAL DE INSTRUCCIONES PARA ASIGNACIÓN DE HORARIOS DE ALUMNOS EN LAS CARRERAS DE.
Base de datos y Microsoft Access
Entrada y salida Fundamentos de programación/Programación I
MATLAB.
Visual basic Curso de Habilitación Laboral IV. ¿Qué es Visual Basic Visual Basic es uno de los tantos lenguajes de programación que podemos encontrar.
Un constructor es un método que inicia un objeto inmediatamente después de su creación. De esta forma nos evitamos el tener que iniciar las variables.
Avances de Microsoft PowerPoint y Office
CENTRO DE BACHILLERATO TECNOLOGICO INDUSTRIAL Y DE SERVIVCIOS No 3
CONSTRUCCIÓN Y ARQUITECTURA DEL SOFTWARE
Fundación NIC-NIIF Contratos de construcción 29/03/2017 Fundación NIC-NIIF
A.E.D. Tema 0-2. Algorítmica Programa de teoría Parte I. Estructuras de Datos. 1. Abstracciones y especificaciones. 2. Conjuntos y diccionarios. 3. Representación.
SEMEJANZA APM.
Prof. Fidel Gonzales Quincho
SECRETARIA DE PLANIFICACION JUJUY – MARZO 2011 Gobierno de Jujuy ENCUENTRO PROVINCIAL BANCO DE PROYECTOS DE INVERSION BANCO DE PROYECTOS DE INVERSION.
Sistemas de ventilación y aire acondicionado
2.5 Producto nominal, deflactación y Producto real
Análisis transversal. Tablas de mortalidad
Objetivo 3: Minimizar los Costos de Operación y Administración de las Dependencias y Entidades. En coordinación con lo que establezca el programa de mediano.
Como manejo las finanzas en Excel. GENERALIDADES C= CapitalM= MontoI= Interés N= número de Periodos i= Tasa de Interés A=Anualidades -Cuota VP= Valor.
Animaciones en la Web Animación GIF Animación Shockwave Flash
Tema 5 – Relaciones Laborales
Las consultas. Son cuadros de información generados a partir de datos relacionados encontrados en otras tablas que se utilizan para filtrar, ver, modificar.
CONCEPTOS DE PROBABILIDAD
CAPACITACIÓN DOCENTE Utilización de las Netbooks del Programa Conectar Igualdad Situación Institucional.
ESTRUCTURAS DE CONTROL
OPERACIONES ALGEBRAICAS índice Términos algebraicos Términos algebraicos ¿Qué es un monomio? ¿Qué es un monomio? ¿Qué es un polinomio? ¿Qué es un polinomio?
Programación II Sesión 3. TABLA DE CONTENIDO  Tipos de Datos en C  Delimitadores  Tipo Char  Tipo Int  Tipo Float  Tipo Double  Constantes  Operadores.
2012-BM5A. Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar.
ALGORITMOS Y TIPOS DE DATOS Un algoritmo es un método para resolver un problema. Para la creación de un programa (resolver un problema) en un lenguaje.
Ingreso , proceso y salida de datos
Repaso Programacion en C
Tema 4 Elementos para el Desarrollo de Algoritmos
TUTORIAL PSeint.
LÓGICA DE PROGRAMACIÓN
EXPRESIONES Una expresión es una forma especial de asignación.
Unidad 3. Introducción a la programación
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Introducción al Visual Basic  Un programa en sentido informático está constituido en un sentido general por variables que contienen los datos con los.
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
ACCIONES Y ESTRUCTURAS
Arreglos en Java.
M. en TI. Omar Téllez Barrientos DOCENTE DE INFORMÁTICA GENERACIÓN DE PSEUDOCÓDIGOS Y ALGORITMOS
En un algoritmo se deben de considerar tres partes: Entrada. Información dada al algoritmo. Proceso. Operaciones o cálculos necesarios para encontrar.
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
CONTROLES Y ESTRUCTURAS BÁSICAS DE PROGRAMACIÓN  1. Algoritmos: conjunto de instrucciones programadas para resolver una tarea específica.  2. Datos:
UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO Nombres: Isaac Sánchez García Teofilo Martinez Garcia Ricardo Del Carmen Paz López Vanesa Anahí Pérez Lizárraga.
Fundamentos Algorítmicos 1
Fundamentos Algorítmicos 1
Transcripción de la presentación:

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

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.

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.

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.

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

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.

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:

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.

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

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

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.

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:

Variables Recibir o ingresar datos Procesar los datos que han sido ingresados por el usuario, y Recibir o ingresar datos 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.

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

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.

Variables X = Ingresamos X = 0 Sumamos X = X +12 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.

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.

Variable

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:

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

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

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

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

Nombres de Variables Ejemplo de nombres de variables.

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

Inicialización salario = 0.0; horasTrabajadas = 0.0; 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 pseudocódigo el signo = se escribe con  salario  0 horasTrabajadas  0 nombreEmpleado  “”

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

Utilización salario = salario * horasTrabajadas; 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 pseucódigo salario  salario * horasTrabajadas escribir(nombreEmpleado + “gana” + salario + “Bs. al mes”)

Ciclo de vida de una variable

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:

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

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(α )

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

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

Resultados de expresiones Tipos de expresiones Tipos de expresiones Resultados de expresiones Aritméticas Numérico Relacionales Lógico o booleano Lógicas Caracter caracter

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.

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

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

Tipos de Operadores Existen 3 tipos: Operadores aritméticos Operadores relacionales Operadores lógicos Operador AND Operador OR Operador NOT  

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?  

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) 2 No 3 * / div % 4 + - or and 5 = <> > < >= <=

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

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 Ejemplo en codigo para un programa Class PagoSalarioEmpleados

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.

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

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

Estructura de un algoritmo

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

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.

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 Escribiendo el algoritmo …

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

Corina Flores Villarroel - UMSS Algunos tips … 2. Para escribir un algoritmo: Aplicar el diseño descendente . Comenzar describiendo los pasos más generales y dividir éste en subproblemas. Ejemplo: ¿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? Corina Flores Villarroel - UMSS

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

Corina Flores Villarroel - UMSS Inicio Ver la cartelera de cines en el periódico Si no proyectan “El ataque” entonces 3.1 decidir otra actividad 3.2 ir al paso 7 Si_no Ir al cine donde proyectarán la película y comprar boleto Fin_si Si hay cola 5.1 ponerse en ella 5.2 mientras haya personas delante hacer 5.2.1 avanzar en la cola fin_mientras 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 6.4.1 ver la película 6.5 abandonar la sala Sino protestar volver a casa 8. fin Corina Flores Villarroel - UMSS

Corina Flores Villarroel - UMSS 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 - UMSS

Corina Flores Villarroel - UMSS Algunos tips … Consiste en … 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 Corina Flores Villarroel - UMSS

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

Corina Flores Villarroel - UMSS Algunos tips … 2. Para escribir un algoritmo: Aplicar el diseño descendente . Comenzar describiendo los pasos más generales y dividir éste en subproblemas. Ejemplo: ¿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? Corina Flores Villarroel - UMSS

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

Corina Flores Villarroel - UMSS Inicio Ver la cartelera de cines en el periódico Si no proyectan “El ataque” entonces 3.1 decidir otra actividad 3.2 ir al paso 7 Si_no Ir al cine donde proyectarán la película y comprar boleto Fin_si Si hay cola 5.1 ponerse en ella 5.2 mientras haya personas delante hacer 5.2.1 avanzar en la cola fin_mientras 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 6.4.1 ver la película 6.5 abandonar la sala Sino protestar volver a casa 8. fin Corina Flores Villarroel - UMSS

Corina Flores Villarroel - UMSS 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 - UMSS

Corina Flores Villarroel - UMSS Algunos tips … Consiste en … 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 Corina Flores Villarroel - UMSS

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 //