Video Primer Bimestre Metodologia Abierta

43
1 METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN I Ing. Danilo Jaramillo H. [email protected] .ec 2570-275 ext. 2637 ESCUELA DE CIENCIAS DE LA COMPUTACIÓN INGENIERIA EN INFORMATICA UNIVERSIDAD TECNICA PARTICULAR DE LOJA

description

Video de la presentación de la Materia de Metodología y Tecnologia de la Programacion I

Transcript of Video Primer Bimestre Metodologia Abierta

Page 1: Video Primer Bimestre Metodologia Abierta

1

METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN I

Ing. Danilo Jaramillo H.

[email protected]

2570-275 ext. 2637

ESCUELA DE CIENCIAS DE LA COMPUTACIÓN

INGENIERIA EN INFORMATICA

UNIVERSIDAD TECNICA PARTICULAR DE LOJA

Page 2: Video Primer Bimestre Metodologia Abierta

2

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.

Page 3: Video Primer Bimestre Metodologia Abierta

3

Objetivo General

• Desarrollar la capacidad de comprender y abstraer problemas de programación identificando sus partes y diseñando soluciones.

Page 4: Video Primer Bimestre Metodologia Abierta

4

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

Page 5: Video Primer Bimestre Metodologia Abierta

5

Conceptos Generales

Dispositivos de almacenamiento de información: nos permiten almacenar información, presentes dentro del mismo computador dispositivos interno, además se encuentran los dispositivos externos.Lenguajes de programación: son software que nos ayudan a desarrollar programas específicos para usuarios específicos con necesidades específicas.

Page 6: Video Primer Bimestre Metodologia Abierta

6

El inicio en la resolución de problemas con computadora

• Propósito• Fases para la solución de problemas

Propósito• Introducirnos en la metodología que vamos a utilizar

para la resolución de problemas utilizando una computadora.

• Encontrarnos con los pasos que se deben seguir o tomar en cuenta para llegar a dicha resolución de forma óptima, (orden que se debe seguir)

• Se hará con problemas sencillos, pero si desarrollamos unas costumbres o buenas practicas, estas nos servirán en el transcurso de nuestra vida profesional.

Page 7: Video Primer Bimestre Metodologia Abierta

7

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.

Page 8: Video Primer Bimestre Metodologia Abierta

8

Pasos para la solución de problemas

Page 9: Video Primer Bimestre Metodologia Abierta

9

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

Page 10: Video Primer Bimestre Metodologia Abierta

10

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

Page 11: Video Primer Bimestre Metodologia Abierta

11

Pasos para la solución de problemas

•EL PASO 4 (algoritmo primera versión): 1. Inicio2. 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 .

Page 12: Video Primer Bimestre Metodologia Abierta

12

ConceptosAlgoritmoMétodo para resolver un problema, conjunto de reglas para ejecutar determinada tarea.

Diagramas de flujoUn diagrama de flujo es una representación gráfica de la secuencia de pasos a realizar para producir un cierto resultado.

Seudo-códigoLenguaje de especificación de algoritmos.

Page 13: Video Primer Bimestre Metodologia Abierta

13

Ejercicios

Page 14: Video Primer Bimestre Metodologia Abierta

14

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. Inicio2. ingresar base3. ingresar altura4. Realizar el Cálculo el Área

= (base * altura ) / 25. mostrar área6. Fin

•EL PASO 5 (prueba): – Prueba de escritorio

•EL PASO 6: – corrección del algoritmo

Page 15: Video Primer Bimestre Metodologia Abierta

15

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. Inicio2. solicitar numhora3. solicitar coshora4. Realizar el calculo sueldo

= numhora * coshora5. mostrar sueldo6. Fin

•EL PASO 5 (prueba): – Prueba de escritorio

•EL PASO 6: – corrección del algoritmo

Page 16: Video Primer Bimestre Metodologia Abierta

16

Programa• Introducirnos la 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

Page 17: Video Primer Bimestre Metodologia Abierta

17

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.

Page 18: Video Primer Bimestre Metodologia Abierta

18

entrada proceso salida

Partes de Programa

Page 19: Video Primer Bimestre Metodologia Abierta

19

Conceptos

Instrucciones o accionesEl proceso de escribir un algoritmo o de codificación del programa consiste en definir las acciones o instrucciones que resolverán el problema. Las instrucciones se deben escribir en el mismo orden en el que han de ejecutarse.Tipos de instruccionesLas acciones básicas que se pueden implementar de manera general en un algoritmo y que esencialmente soportan todos los lenguajes.

Page 20: Video Primer Bimestre Metodologia Abierta

20

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

Page 21: Video Primer Bimestre Metodologia Abierta

21

Elementos de un programa

• Elementos de un programa• Palabras reservadas (inicio, fin, si,

entonces... etc.) • Identificadores (nombres de

variables) • Constantes • Variables • Expresiones • instrucciones

Page 22: Video Primer Bimestre Metodologia Abierta

22

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.

Page 23: Video Primer Bimestre Metodologia Abierta

23

Tipos de datosLos tipos de datos simples los podemos definir como numéricos, lógicos y carácter, etc.. EnterosNúmeros enteros desde un valor negativo alto hasta otro valor positivo alto. CarácterAlmacenan información alfa-numéricaLógicos (booleanos) - Verdadero y FalsoComo indica el encabezado, este tipo presenta sólo dos valores: verdadero o falso.

Page 24: Video Primer Bimestre Metodologia Abierta

24

Elementos de un programa

VariablesLos 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. ConstantesUna constante es un objeto de datos con un nombre, un tipo y un valor asociado que no puede modificarse una vez definido.

Page 25: Video Primer Bimestre Metodologia Abierta

25

Elementos de un programa

OperadoresUn 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, %)ExpresionesLas 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 serde tipo: aritméticas, lógicas, relacionales y carácter

Page 26: Video Primer Bimestre Metodologia Abierta

26

Expresiones

• Aritméticas– 5 + 3

• Lógicas– (A > B) (verdadero)

• relacionales – > , <, =

Page 27: Video Primer Bimestre Metodologia Abierta

27

Entrada y salida de información

• Las operaciones de entrada permiten leer determinados valores y asignarlos a variables determinadas, la operación se la conoce como lectura (leer, read), los dispositivos pueden ser teclado, unidades de disco, etc.

• Posterior a la transformacion de los datos, necesariamente la operación de salida se denomina escritura (presentar,write) y se la puede hacer a pantalla, impresora, etc

Page 28: Video Primer Bimestre Metodologia Abierta

28

Escritura de un algoritmo/programa

• Cabecera del programa– Identificador o nombre correspondiente con la

palabra reservada

• Sección de declaración– De describen todas las variables o las

constantes

• Comentarios– Para documentar el algoritmo

• Sección de acciones

Page 29: Video Primer Bimestre Metodologia Abierta

29

Elementos de un programa Algoritmo

areatrianguloInicio

Leer alturaLeer baseArea = (base * altura ) /

2Presentar area

fin

variables

operadores

expresión

Page 30: Video Primer Bimestre Metodologia Abierta

30

ejercicios

// algoritmo para calcular el area de un circulo

Algoritmo areacirculoInicio constante pi = 3.1416 leer radio

area = (2 * pi * radio)presentar area

fin

Page 31: Video Primer Bimestre Metodologia Abierta

31

Flujo de Control

• Estudiaremos las estructuras de control que se utilizan en los programas/algoritmos como son:– las estructuras de control de flujo– Además se presentan otras sentencias,

aquellas que se conocen como sentencias repetitivas.

Page 32: Video Primer Bimestre Metodologia Abierta

32

Estructuras Selectivas

Estructura SecuencialLa 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.

Page 33: Video Primer Bimestre Metodologia Abierta

33

Ejemplo

//permite calcular el perímetro de un cuadrilátero

Algoritmo perimetrorectangulo

inicioLeer lado

Leer ancho

Perímetro = (lado*2)+(ancho*2)

Presentar perímetro

fin

Page 34: Video Primer Bimestre Metodologia Abierta

34

Estructuras Selectivas

Estructuras de decisión– Son aquellas que nos permiten la

decisión entre acciones alternativas, además permiten llevar a cabo una acción si una condición (lógica) tiene un valor.

– Pueden ser simples o múltiples– Se pueden utilizar de manera anidada

de forma indefinida

Page 35: Video Primer Bimestre Metodologia Abierta

35

Si (condición) (lógica) …. instruccionesfinsi

Si (condición) (lógica) … instruccionesSino (caso contrario) … instruccionesFinsi

Estructuras Selectivas

Page 36: Video Primer Bimestre Metodologia Abierta

36

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

Page 37: Video Primer Bimestre Metodologia Abierta

37

Estructuras repetitivas•Permiten la repetición de un número

determinado de sentencias. •Se conoce también como bucle.•Es importante tener en cuenta cuantas

veces se repite el bucle o ciclo y 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.

Page 38: Video Primer Bimestre Metodologia Abierta

38

Estructuras repetitivas anidadas

•Son denominados 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.

Page 39: Video Primer Bimestre Metodologia Abierta

39

Mientras (condición) hacer ….. instruccionesFin_mientras

Desde var 20 hasta 30 hacer…. instruccionesFin_desde

Hacer …. instruccionesMientras (condición)

Repetir…Hasta_que (condición)

variable

inicio Fin – incluye limite

Page 40: Video Primer Bimestre Metodologia Abierta

40

Ejemplo// realizar la tabla de multiplicarAlgoritmo tablademultiplicarInicio entero n leer n desde c 1 hasta n hacer presentar n, “ + ”,c, “ = ”, n +c findesdefin

Si n = 5 presentaría

5 + 1 = 6

5 + 2 = 7

5 + 3 = 8

5 + 4 = 9

5 + 5 = 10

Page 41: Video Primer Bimestre Metodologia Abierta

41

Ejemplo

//realiza la tabla de multiplicarAlgoritmo tablademultiplicarInicio entero c, n

c 1Leer nMientras (c <= n) hacer

presentar n, “ + ”,c, “ = ”, n +c c = c +1Finmientras

Fin

Si n = 5 presentaría

5 + 1 = 6

5 + 2 = 7

5 + 3 = 8

5 + 4 = 9

5 + 5 = 10

Page 42: Video Primer Bimestre Metodologia Abierta

42

// algoritmo para calcular el factorial de un numeroAlgoritmo factorialInicio

entero f, numeroleer numerof 1desde (i 1 hasta numero) hacer

f f * ifindesdepresentar “el factorial de”, numero,”es”,f

fin

Page 43: Video Primer Bimestre Metodologia Abierta

43

// algoritmo para determinar si un numero es primo o noAlgoritmo numeroprimoInicio

entero d, numero, limlogica pleer numerod 2lim num / 2p verdaderomientras (d < num) si residuo(num/d) = 0

p falsod lim

finsi d d + 1finmientrassi (p)

presentar “numero es primo”sino

presentar “numero no es primo”finsi

fin