Metodologia de la Programción
Upcoming SlideShare
Loading in...5
×
 

Metodologia de la Programción

on

  • 10,945 views

Nos habla de la metodologia de la programacion, su importancia y para q sirve.

Nos habla de la metodologia de la programacion, su importancia y para q sirve.

Statistics

Views

Total Views
10,945
Views on SlideShare
10,873
Embed Views
72

Actions

Likes
3
Downloads
432
Comments
0

3 Embeds 72

http://eva.utpl.edu.ec 58
http://www.slideshare.net 13
http://programacion.gnomio.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Metodologia de la Programción Metodologia de la Programción Presentation Transcript

  • METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN I Ing. Danilo Jaramillo H. [email_address] 2570-275 ext. 2637 ESCUELA : CIENCIAS DE LA COMPUTACIÓN NOMBRES: FECHA : OCTUBRE2008 – FEBRERO 2009
  • Introducción
    • El desarrollo de software está tomando gran importancia en el mundo informático
    • La asignatura busca estudiar los fundamentos de la programación
    • Metodología de la programación = metodología necesaria para resolver problemas mediante programas de computadora.
  • Objetivo General
    • Desarrollar la capacidad de comprender y abstraer problemas de programación identificando sus partes y diseñando soluciones.
  • Conceptos Generales
    • Hardware: Corresponde a la parte física de un computador.
    • Software: El software son todos aquellos programas que permiten la comunicación entre el usuario y el computador.
    • Dispositivos de entrada y salida: son aquellos elementos de hardware que nos permiten el ingreso de datos y presentarlos al usuarios a través
  • Metodología
    • Programación Modular
      • Flexible y potente
      • El programa se divide en Módulos
    • Programación Estructurada
      • El programa tiene un diseño modular
      • Los módulos son diseñados en forma descendente
      • Cada modulo se codifica en base a: secuencias, selección y repetición.
  • Conceptos
    • Algoritmo
    • Método para resolver un problema, conjunto de reglas para ejecutar determinada tarea.
    • Diagramas de flujo
    • Un diagrama de flujo es una representación gráfica de la secuencia de pasos a realizar para producir un cierto resultado.
    • Seudo-código
    • Lenguaje de especificación de algoritmos.
  • Pasos para la solución de problemas
    • Definición del problema (Entender que es lo que se requiere)
    • Determinación de los datos de entrada y salida
    • Modelo Matemático (Para conocer el proceso de solución)
    • Algoritmo
    • Prueba
    • Refinamiento del algoritmo
    • Codificación
  • Pasos para la solución de problemas
    • Sumar dos números
    • EL PASO 1 (entender) :
    • Ingresar dos números realizar la sumatoria y presentarlos
    • EL PASO 2 (datos de entrada y salida):
    • Entrada: numero1 y numero 2
    • Salida: resultado
    • EL PASO 3 (modelo matemático a utilizar):
    • Permite resolver analíticamente el problema, en el ejemplo de las sumas tendríamos:
      • Datos de entrada 10 y 30 (primer termino y segundo termino)
      • Proceso para sumar 10 + 30 (suma de los términos)
      • Información de salida 40 (resultado del proceso)
    • Resultado = numero1 + numero2
  • Pasos para la solución de problemas
    • EL PASO 4 (algoritmo primera versión):
        • 1. Inicio
        • 2. Ingresar el primer valor a sumar (numero1)
        • 3. Ingresar el segundo valor a sumar (numero2)
        • 4. Realizar la sumatoria (Resultado = numero1 + numero2)
        • 5. Presentar el resultado de la suma (resultado)
        • 6. Fin
    • EL PASO 5 (prueba):
      • Prueba de escritorio
    • EL PASO 6:
    • Consiste en refinamiento del algoritmo.
    • EL PASO 7:
    • Equivale a escribir (traducir) el algoritmo en lenguaje de alto nivel .
  • Ejercicios
  • Determinar el área de un triángulo si se conoce la base y altura
    • EL PASO 1 (entender) :
    • EL PASO 2 (datos de entrada y salida):
    • Entrada: base y altura
    • Salida: area
    • EL PASO 3 (modelo matemático a utilizar):
    • Area = base * altura / 2
    • EL PASO 4 (algoritmo):
        • 1. Inicio
        • 2. ingresar base
        • 3. ingresar altura
        • 4. Realizar el Cálculo el Área = (base * altura ) / 2
        • 5. mostrar área
        • 6. Fin
    • EL PASO 5 (prueba):
      • Prueba de escritorio
    • EL PASO 6:
      • corrección del algoritmo
  • Determinar el valor a pagar conociendo el número de horas y el costo por hora
    • EL PASO 1 (entender) :
    • EL PASO 2 (datos de entrada y salida):
    • Entrada: Numero de horas y costo
    • Salida: sueldo a pagar
    • EL PASO 3 (modelo matemático a utilizar):
    • sueldo = NumerodeHora * Costodehora
    • EL PASO 4 (algoritmo):
        • 1. Inicio
        • 2. solicitar numhora
        • 3. solicitar coshora
        • 4. Realizar el calculo sueldo = numhora * coshora
        • 5. mostrar sueldo
        • 6. Fin
    • EL PASO 5 (prueba):
      • Prueba de escritorio
    • EL PASO 6:
      • corrección del algoritmo
  • Programa
      • Introducirnos al proceso de la programación que se manifiesta esencialmente en los programas.
      • Un programa de computadora es un conjunto finito de instrucciones que producirán la ejecución de una determinada tarea. Un programa es un medio para llegar a un fin. Proceso para solucionar un problema.
      • Diseñar algoritmos (pseudo-codigo) para resolver problemas, y su posterior conversión en programas
    Fundamentos de programación
  • Partes de Programa
    • El programador debe establecer el conjunto de especificaciones que debe contener el programa:
      • Entrada, salida y algoritmos de resolución
      • Se debe establecer de donde provienen las entradas (dispositivos de entrada teclado, disco.)
      • Las salidas de datos donde se van a presentar.
  • Partes de Programa entrada proceso salida
  • Instrucciones
    • instrucciones de inicio/fin
      • Inicio
      • fin
    • instrucciones de asignación
      • Variable  valor
    • instrucciones de lectura
      • Leer variable
    • instrucciones de escritura
      • Presentar variable
      • Presentar mensaje
  • Elementos de un programa
    • Palabras reservadas (inicio, fin, si, entonces... etc.)
    • Identificadores (nombres de variables)
    • Constantes
    • Variables
    • Expresiones
    • instrucciones
  • Elementos de un programa
    • Dato:
      • "hecho o valor a partir del cual se puede inferir una conclusión información".
      • Los datos son aquello que un programa manipula.
      • Sin datos un programa no funcionaría correctamente.
  • Tipos de datos
    • Los tipos de datos simples los podemos definir como numéricos, lógicos y carácter, etc..
    • Enteros
    • Números enteros desde un valor negativo alto hasta otro valor positivo alto.
    • Carácter
    • Almacenan información alfa-numérica
    • Lógicos (booleanos) - Verdadero y Falso
    • Como indica el encabezado, este tipo presenta sólo dos valores: verdadero o falso.
  • Elementos de un programa
    • Variables
    • Los datos son almacenados en la memoria de la computadora. Una variable es una referencia a un área específica de la memoria de la computadora donde se guardan los datos.
    • Constantes
    • Una constante es un objeto de datos con un nombre, un tipo y un valor asociado que no puede modificarse una vez definido.
  • Elementos de un programa
    • Operadores
    • Un operador es un símbolo formado por uno o más caracteres que permite realizar una determinada operación entre uno o más datos y produce un resultado.
    • (+,-,*,/,>,<, !=, <>, Mod, %)
    • Expresiones
    • Las expresiones son combinación de constantes, variables, símbolos de operación, paréntesis y nombres de funciones
    • Una expresión consta de operandos y operadores, según sea el tipo de objetos que manipulan las expresiones puede ser
    • de tipo: aritméticas, lógicas, relacionales y carácter
  • Expresiones
    • Aritméticas
      • 5 + 3
      • 5 * 4 + 6  (5 * 4)+6
    • Lógicas
      • (A > B) (verdadero)
    • relacionales
      • > , <, =
  • Entrada y salida de información
    • Las operación de entrada permiten leer determinados valores y asignarlos a variables determinadas.
    • se la conoce como lectura (leer, read), los dispositivos pueden ser teclado, unidades de disco, etc.
    • Luego de la transformación de los datos, la operación de salida se denomina escritura (presentar,write)
    • se la puede hacer a pantalla, impresora, etc
  • Elementos de un programa
    • Algoritmo areatriangulo
    • Inicio
      • Leer altura
      • Leer base
      • Area = (base * altura ) / 2
      • Presentar area
    • fin
  • Elementos de un programa
    • Algoritmo areatriangulo
    • Inicio
      • Leer altura
      • Leer base
      • Area = (base * altura ) / 2
      • Presentar area
    • fin
    variables operadores expresión
  • ejercicios
    • // algoritmo para calcular el area de un circulo
    • Algoritmo areacirculo
    • Inicio
    • constante pi = 3.1416
    • leer radio
    • area = (2 * pi * radio)
    • presentar area
    • fin
  • Estructuras Selectivas
    • Estructura Secuencial
    • La estructura secuencial es aquella en la que una instrucción sigue a otra en secuencia. Suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente.
  • Ejemplo
    • //permite calcular el perímetro de un cuadrilátero
    • Algoritmo perimetrorectangulo
    • inicio
      • Leer lado
      • Leer ancho
      • Perímetro = (lado*2)+(ancho*2)
      • Presentar perímetro
    • fin
  • Estructuras Selectivas
    • Estructuras de selección
      • permiten la decisión entre acciones alternativas,
      • llevar a cabo una acción en base a una condición (lógica).
      • Pueden ser simples o múltiples
      • Se pueden utilizar de manera anidada de forma indefinida.
    • Si (condición)  (lógica verdadero)
    • … . instrucciones
    • finsi
    • Si (condición)  (lógica verdadero)
    • … instrucciones
    • Sino (caso contrario  falso)
    • … instrucciones
    • Finsi
    Estructuras Selectivas
  • Ejemplo
    • Algoritmo numeropar
    • Inicio
    • entero numero
    • Leer numero
    • Si residuo(numero/2) = 0
      • presentar “numero par
      • Finsi
    • fin
    • Algoritmo numeroparimpar
    • Inicio
    • entero numero
      • Leer numero
      • Si residuo(numero/2)=0
      • presentar “numero par”
      • Sino
      • presentar “numero impar”
      • Finsi
    • fin
  • Estructuras repetitivas
    • repetición de un número determinado de sentencias en base a una condición lógica.
    • Se conoce también como bucle.
    • Es importante tener en cuenta:
      • cuantas veces se repite el bucle o ciclo,
      • cuál es el cuerpo del mismo.
    • El cuerpo del bucle lo constituyen:
      • una serie de sentencias, que pueden ser de cualquier tipo,
      • las que serán repetidas de acuerdo a lo que indique la condición de finalización del bucle.
  • Estructuras repetitivas anidadas
    • todos aquellos bucles que estén contenidos dentro de otro bucle.
    • Cuando se anidan bucles, se debe tener cuidado que el bucle inferior este contenido completamente dentro del bucle exterior.
    • Todos los tipos de bucles pueden anidarse, sea entre si o entre cada uno.
    • Mientras (condición) hacer
    • … .. instrucciones
    • Fin_mientras
    • Desde num  20 hasta 30 hacer
    • … . instrucciones
    • Fin_desde
    • Hacer
    • … . instrucciones
    • Mientras (condición)
    • Repetir
    • Hasta_que (condición)
    variable inicio Fin – incluye limite
  • Ejemplo
    • // realizar la tabla de multiplicar
    • Algoritmo tablademultiplicar
    • Inicio
    • entero n
    • leer n
    • desde c  1 hasta n hacer
    • presentar n, “ + ”,c, “ = ”, n +c
    • findesde
    • fin
    Si n = 5 presentaría 5 + 1 = 6 5 + 2 = 7 5 + 3 = 8 5 + 4 = 9 5 + 5 = 10
  • Ejemplo
    • //realiza la tabla de multiplicar
    • Algoritmo tablademultiplicar
    • Inicio
    • entero c, n
      • c  1
      • Leer n
      • Mientras (c <= n) hacer
      • presentar n, “ + ”,c, “ = ”, n +c
      • c = c +1
      • Finmientras
    • Fin
    Si n = 5 presentaría 5 + 1 = 6 5 + 2 = 7 5 + 3 = 8 5 + 4 = 9 5 + 5 = 10
  • // algoritmo para calcular el factorial de un numero Algoritmo factorial Inicio entero f, numero leer numero f  1 desde (i  1 hasta numero) hacer f  f * i findesde presentar “el factorial de”, numero,”es”,f fin
  • // algoritmo para determinar si un numero es primo o no Algoritmo numeroprimo Inicio entero d, numero, lim logica p leer numero d  2 lim  num / 2 p  verdadero mientras (d < num) si residuo(num/d) = 0 p  falso d  lim finsi d  d + 1 finmientras si (p) presentar “numero es primo” sino presentar “numero no es primo” finsi fin
  •