Control de Flujo IV: Algoritmos Numricos - PowerPoint PPT Presentation

1 / 10
About This Presentation
Title:

Control de Flujo IV: Algoritmos Numricos

Description:

Para ilustrar este hecho, se muestra a continuaci n un ciclo escrito con la ... Condici n para detener el algoritmo. 12. C lculo de la constante e #include stdio.h ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 11
Provided by: FelipeC2
Category:

less

Transcript and Presenter's Notes

Title: Control de Flujo IV: Algoritmos Numricos


1
Control de Flujo (IV)Algoritmos Numéricos
  • Clase 10
  • Introducción a la Programación
  • Marcos Sepúlveda(marcos_at_ing.puc.cl)

2
Resumen clase anterior
  • Instrucción do-while
  • Instrucción for
  • Sabemos hacer programas con iteraciones
  • Mini-tareas
  • Esperando el Año Nuevo
  • Conversión de cantidades a letras

3
Equivalencia Lógica entre Instrucciones de
Iteración
  • Las tres instrucciones con que cuenta el lenguaje
    de programación C para la especificación de
    iteración son lógicamente equivalentes.
  • Para ilustrar este hecho, se muestra a
    continuación un ciclo escrito con la instrucción
    for, y la forma en que se rescribiría empleando
    las otras dos instrucciones de iteración.

4
Equivalencia Lógica entre Instrucciones de
Iteración
  • Empleando for
  • for (bloque1 condicion bloque2)
  • bloque3
  • Instrucciones de bloque1 y bloque2 separadas por
    coma
  • Instrucciones de bloque3 separadas por punto y
    coma
  • Empleando while
  • bloque1
  • while (condicion)
  • bloque3
  • bloque2
  • Instrucciones de los bloques separadas por punto
    y coma

5
Equivalencia Lógica entre Instrucciones de
Iteración
  • Empleando for
  • for (bloque1 condicion bloque2)
  • bloque3
  • Instrucciones de bloque1 y bloque2 separadas por
    coma
  • Instrucciones de bloque3 separadas por punto y
    coma
  • Empleando do-while
  • bloque1
  • if (condicion)
  • do
  • bloque3
  • bloque2
  • while (condicion)
  • Instrucciones de los bloques separadas por punto
    y coma
  • Por qué es necesario el if?

6
Equivalencia Lógica entre Instrucciones de
Iteración
  • A continuación se presenta un ciclo escrito
    mediante do-while, y la forma como se rescribiría
    empleando while.

7
Equivalencia Lógica entre Instrucciones de
Iteración
  • Empleando do-while
  • do
  • bloque
  • while (condicion)
  • Instrucciones del bloque separadas por punto y
    coma
  • Empleando while
  • bloque
  • while (condicion)
  • bloque
  • Instrucciones del bloque separadas por punto y
    coma
  • Por qué se debe repetir el bloque (afuera y
    adentro)?

8
Ciclos anidados
  • Hay un ciclo dentro de otro
  • Por ejemplo, se requiere para recorrer una matriz

1 1 1 2 1 3 1 4 1 5 2 1 2 2 2 3 2 4 2 5 3 1 3 2 3
3 3 4 3 5
for (i1 ilt3 i)       for (j1 jlt5
j)          printf("d d\n", i, j)
9
Qué son los algoritmos numéricos?
  • Permiten resolver problemas matemáticos,
    obteniendo aproximaciones para las soluciones
    mediante algoritmos iterativos.
  • Ejemplos
  • Evaluación de funciones como log, sqrt, cos,
  • Interpolación y extrapolación
  • Sistemas de ecuaciones
  • Integración numérica
  • Generación de números aleatorios
  • Minimización y maximización de funciones
  • Aplicaciones espectrales
  • Análisis estadístico
  • Ecuaciones diferenciales
  • Permiten resolver problemas cuando no hay buenas
    soluciones algebraicas

10
Funciones que ya conocemos
  • double factorial(int x)
  • double potencia(double x, int n)

11
Un primer algoritmo numérico
  • Cálculo de e.
  • Componentes del algoritmos
  • Cálculo del siguiente término de la serie
  • Acumular resultado de la serie
  • Condición para detener el algoritmo

12
Cálculo de la constante e
  • include ltstdio.hgt
  • double factorial(int x)
  • int i / Factor actual de
    multiplicacion 2, 3, ..., x /
  • double fact 1.0 / Acumulador para el
    resultado, inicialmente 1 /
  • for (i2 iltx i)
  • fact fact i
  • return(fact)
  • main()
  • int i 1
  • double e 1
  • double eanterior
  • do
  • eanterior e
Write a Comment
User Comments (0)
About PowerShow.com