5.5 Tarea

  1. Diseñe todos los subprogramas posibles, que permitan tener soluciones procedimentales modulares, para todos los algoritmos/programas principales vistos en clase hasta el momento (en ejemplos, ejercicios y tareas).

  2. Mediante un diagrama de flujo diseñe los subalgoritmos y algoritmo principal necesarios para obtener e imprimir \(e^x\) de un número real dado \(x\). El subalgoritmo para el cálculo de \(e^x\):

    • Debe recibir un número real \((x)\) y, para la condición de parada, un número real positivo cercano a cero \((\varepsilon)\).

    • Debe devolver como resultado un número real.

    • Además tenga en cuenta:

      • \(e^{-x} = \frac{1}{e^{x}}\), para hacer cálculos únicamente con \(x > 0\).
      • \(e^{x} = e^{n + r} = \left( e^n \right) \left( e^r \right)\) con \(x > 0\), \(n\) un entero no negativo y \(0 < r < 1\).
      • \(e^{n} = \underbrace{e^{1} \dots e^{1}}_{n \text{ veces}}\) (cuando se requiere, pueden poner al computador a calcular \(e^{1}\) una única vez por ejecución del subalgoritmo o tomar \(e \approx 2.718281828459045\)).
      • \(e^{x} = \sum_{i = 0}^{\infty} \frac{x^{i}}{i!}\).
  3. Mediante un diagrama de flujo diseñe los subalgoritmos y algoritmo principal necesarios para obtener e imprimir el arco tangente, arco seno y arco coseno de un número real dado. Los subalgoritmos para el cálculo del arco tangente, arco seno y arco coseno:

    • Deben recibir un número real \((x)\) y, para la condición de parada, un número real positivo cercano a cero \((\varepsilon)\).

    • Deben devolver como resultado un número real.

    • Además tenga en cuenta:

      • \(\arctan(-x) = - \arctan(x)\), para hacer cálculos únicamente con \(x > 0\).
      • \(\arctan(x) = \frac{\pi}{2} - \arctan\left(\frac{1}{x}\right)\), para hacer cálculos únicamente con \(x \leq 1\).
      • \(\arctan(x) = \frac{\pi}{6} + \arctan \left( \frac{\sqrt{3} x - 1}{\sqrt{3} + x} \right)\), para hacer cálculos únicamente con \(x \leq 2 - \sqrt{3}\) (cuando se requiere, pueden poner a calcular \(\sqrt{3}\) una única vez por ejecución o tomar \(\sqrt{3} \approx 1.732050807568877\)).
      • \(\arctan(x) = \sum_{i = 0}^{\infty} \frac{(-1)^i}{2i+1}x^{2i+1}\).
      • \(\arcsin(x) = \arctan\left( \frac{x}{\sqrt{1 - x^2}} \right)\) (El subalgoritmo para la raíz cuadrada debío diseñarse en respuesta a un punto anterior).
      • \(\arccos(x) = \arctan\left( \frac{\sqrt{1 - x^2}}{x} \right)\).