Ya lo tengo hecho pero cuando lo compilo no me sale el resultado, ¿podrían ayudarme a saber en donde estoy mal?
Código
#include <stdio.h> #include <stdlib.h> float potencia(float, float); float factorial(float); float exponencial(float); float sen(float); float senoh(float); float coseh(float); float potencia(float x, float k) { float z = 1; int i; if (k == 0) { return (1); } else { for (i = 0; i < k; i++) { z *= x; } } return (z); } float factorial(float k) { float z = 1; int i; for (i = 1; i <= k; i++) { z *= i; } return (z); } float exponencial(float x) { float suma = 0, ax, error = 0.0001; int k = 0; do { ax = (potencia(x, k) / factorial(k)); suma += ax; k++; if (ax < 0) { ax = -ax; } } while (ax > error); return (suma); } float sen(float x) { float suma = 0, ax, error = 0.001; int k; do { ax = (((potencia(-1, k) * potencia(x, 2 * k)) + 1) / factorial((2 * k) + 1)); suma += ax; k++; if (ax < 0) { ax = -ax; } } while (ax > error); return (suma); } float suma = 0, ax, error = 0.0001; int k; do { ax = ((potencia(-1, k) * potencia(x, 2 * k)) / factorial(2 * k)); suma += ax; k++; if (ax < 0) { ax = -ax; } } while (ax > error); return (suma); } float senoh(float x) { float z = 0; z = (exponencial(x) - (1 / exponencial(x))) / 2; return (z); } float coseh(float x) { float z = 0; z = (exponencial(x) + (1 / exponencial(x))) / 2; return (z); } int main(int argc, char** argv) { int opcion; switch (opcion) { case 1: seno = sen(x); break; case 2: break; case 3: break; case 4: cot = 1/tang; break; case 5: break; case 6: csc = 1/sen(x); break; case 7: senh = senoh(x); break; case 8: break; } return (EXIT_SUCCESS); }