elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  SERIES DE TAYLOR C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: SERIES DE TAYLOR C++  (Leído 40,478 veces)
anita0421

Desconectado Desconectado

Mensajes: 5


Ver Perfil
SERIES DE TAYLOR C++
« en: 17 Noviembre 2012, 17:59 pm »

Buenos dias!
Ésta es una tarea en C++ que no logro entender... si pudieran ayudarme estaria muy agradecidaa! :)





Empleando series de Taylor, obtienes resultados por aproximación para resolver la funcion básica ex para valores complejos de x

Apóyate en programación C/C++ para desarrollar la solución a este problema.

Condiciones que debe tener tu práctica:


harás uso solo y exclusivamente de funciones definidas por el programador (FDP), no usar funciones predefinidas.

La FDP será la única que podrá calcular y generar el resultado de  la cual llevará por nombre «exponente()».

No harás uso de definiciones simbólicas ni constantes, ni variables globales

Solicitar desde el programa principal el valor de x

Imprimir o desplegar desde el programa principal el resultado calculado y generado por «exponente()»

Hacer todo el proyecto lo mas modular y funcional posible, creando las FDP necesarias para simplificar tareas y dejar mas limpia el área de llamados a dichas funciones.


Nota: Cuando vas obteniendo resultados parciales, el último resultado hasta el momento obtenido se compara contra el anterior. Si la diferencia entre este último valor obtenido contra el anterior es nula (son iguales), es momento de concluir la serie de operaciones acumulativas para tal serie. En cualquier otro caso se continuará con los cálculos, operaciones acumulativas y de nueva cuenta la comparación.


Podemos usar los siguientes archivos:


PARA FACTORIAL:

(Main)



/* calculo del factorial  */
#include <stdio.h>
#include </home/usuario/Documentos/jhesquivel/factorial.h>

int main()
{
    int dato, factor;
    printf("Dame el valor a calcular: ");
    scanf("%d", &dato);
    factor=factorial(dato);
    printf(" El factorial de %d es %d. %s \n",dato, factor, factor==9999 ? "El resultado excedió el limite de tu compu" : "");
    return 0;
}




(Funcion Definida por el Programador)

int factorial(int dato)
{
    int resultado=1, resultado_tmp, contador;
    contador=dato-2;
    printf("1 ");

    while (contador>=0)
    {
        printf("* %d ",(dato-contador));
        resultado*=(dato - contador); // producto parcial
        resultado_tmp=resultado; // respalda resultado
        contador--; // posicionarse para el siguiente producto parcial

        resultado_tmp=resultado*(dato - contador)/resultado_tmp; // multiplica y divide por si mismo. No debe alterar
        if (resultado_tmp!=(dato - contador))
        {  resultado=9999;
           break;
        }
    }
    return resultado;
}



PARA POW: (Funcion Defindia por el Programador)



int raiz_2(int x)
{
   float b;

   b =float(x);
   while (!(b==(x/b)))
   {
      b =(x/b+b)/2.0;
   }
   return b;
}




MUCHISIMAS GRACIAS! :)


En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: SERIES DE TAYLOR C++
« Respuesta #1 en: 17 Noviembre 2012, 20:53 pm »

No hace falta la función factorial ni la que emule a pow:
Código
  1. /*  serie e^x */
  2. #include <stdio.h>
  3.  
  4. int main()
  5. {
  6.    int terminos;
  7.    double x;
  8.    double serie(double ,int );
  9.    printf("Este programa calcula \"e\" elevado a \"x\" por desarrollo en serie\ncon el numero de terminos que quieras\n");
  10.    printf("Teclea x: ");
  11.    scanf("%lf",&x);
  12.    printf("Teclea el numero de terminos: ");
  13.    scanf("%d", &terminos);
  14.    printf("El resultado de e elevado a %g con %d terminos es %1.16lf\n", x, terminos, serie(x, terminos));
  15.  
  16.    return 0;
  17. }
  18. double serie(double z, int numero)
  19. {
  20.     double miserie=1, frac;
  21.     int i;
  22.     frac=z;
  23.     miserie+=frac;
  24.     i=2;
  25.     if (numero==1)
  26.         {
  27.             miserie=1;
  28.             return miserie;
  29.         }
  30.     while (i<=numero)
  31.        {
  32.             frac=frac*z/i++;
  33.             miserie+=frac;
  34.        }
  35. return miserie;
  36. }
Si, ya sé que está el código en C en lugar de C++ como querias, pero es que no has puesto nada tuyo y tampoco es plan de hacerte la tarea a la carta.
Saludos!.


En línea

Hectorues

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: SERIES DE TAYLOR C++
« Respuesta #2 en: 12 Septiembre 2013, 02:47 am »

Hola alguien me puede ayudar con la siguiente serie de taylor porfavor, sin−1  x =x+1/2.x^3/3+1/2.3/4.x^5/5+1/2.3/4.5/6.x^7/7.... (el punto significa multiplicacion) lo que necesto es un programa que la resuelva incluyendo recursividad. Muchas gracias de antemano y espero respuestas.
En línea

kaltorak

Desconectado Desconectado

Mensajes: 71



Ver Perfil
Re: SERIES DE TAYLOR C++
« Respuesta #3 en: 12 Septiembre 2013, 03:53 am »

Hola alguien me puede ayudar con la siguiente serie de taylor porfavor, sin−1  x =x+1/2.x^3/3+1/2.3/4.x^5/5+1/2.3/4.5/6.x^7/7.... (el punto significa multiplicacion) lo que necesto es un programa que la resuelva incluyendo recursividad. Muchas gracias de antemano y espero respuestas.

Nos encantaría ayudarte, pero no hacerte la tarea, si subes el código que llevas hasta el momento y nos dices donde tienes el problema, estaríamos encantados de ayudarte  ;)

Un saludo
Kaltorak.
En línea



MeCraniDOS


Desconectado Desconectado

Mensajes: 337


Sr. Glass


Ver Perfil
Re: SERIES DE TAYLOR C++
« Respuesta #4 en: 15 Septiembre 2013, 11:38 am »

y tampoco es plan de hacerte la tarea a la carta.

Tu tampoco has hecho nada, has hecho copy - paste  :-*, lo digo porque tengo el mismo código y lo saqué de una web.

Código
  1. /*  serie e^x */
  2. #include <stdio.h>
  3.  
  4. int main()
  5. {
  6.    int terminos;
  7.    double x;
  8.    double serie(double ,int );
  9.    printf("Este programa calcula \"e\" elevado a \"x\" por desarrollo en serie\ncon el numero de terminos que quieras\n");
  10.    printf("Teclea x: ");
  11.    scanf("%lf",&x);
  12.    printf("Teclea el numero de terminos: ");
  13.    scanf("%d", &terminos);
  14.    printf("El resultado de e elevado a %g con %d terminos es %1.16lf\n", x, terminos, serie(x, terminos));
  15.  
  16. fflush(stdin);
  17.    getchar();
  18. }
  19. double serie(double z, int numero)
  20. {
  21.     double miserie=1, frac;
  22.     int i;
  23.     frac=z;
  24.     miserie+=frac;
  25.     i=2;
  26.     if (numero==1)
  27.         {
  28.             miserie=1;
  29.             return miserie;
  30.         }
  31.     while (i<=numero)
  32.        {
  33.             frac=frac*z/i++;
  34.             miserie+=frac;
  35.        }
  36. return miserie;
  37. }
  38.  

Saludos  :rolleyes:



Hola alguien me puede ayudar con la siguiente serie de taylor porfavor, sin−1  x =x+1/2.x^3/3+1/2.3/4.x^5/5+1/2.3/4.5/6.x^7/7.... (el punto significa multiplicacion) lo que necesto es un programa que la resuelva incluyendo recursividad. Muchas gracias de antemano y espero respuestas.

Crea otro tema y aporta tu algo, no te vamos a hacer el trabajo.

Saludos
« Última modificación: 21 Septiembre 2013, 10:36 am por Eternal Idol » En línea

"La física es el sistema operativo del Universo"
     -- Steven R Garman
Hectorues

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: SERIES DE TAYLOR C++
« Respuesta #5 en: 17 Septiembre 2013, 00:15 am »

La verdad aun empiezo en esto de programar y no tenia idea de como empezar, muchas gracias por sus respuestas :)
En línea

flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: SERIES DE TAYLOR C++
« Respuesta #6 en: 17 Septiembre 2013, 05:12 am »

Citar
Empleando series de Taylor, obtienes resultados por aproximación para resolver la función básica ex para valores complejos de x
"valores complejos"=numero complejos?
si es así, habría que revisar los codes
En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Calculo integral. Series de Taylor (Ayuda)
Foro Libre
Nirvanareus 2 6,329 Último mensaje 8 Agosto 2010, 16:32 pm
por Constance
ayuda con la serie de Taylor
Programación C/C++
leonardo9307 2 3,677 Último mensaje 24 Mayo 2013, 07:19 am
por leosansan
Taylor Swift apunta al comienzo de la rebelión de los músicos contra Spotify
Noticias
wolfbcn 0 1,474 Último mensaje 4 Noviembre 2014, 01:46 am
por wolfbcn
Calculando funciones trigonométricas sin librerías (series de taylor) (Aporte)
Programación C/C++
engel lex 1 8,193 Último mensaje 1 Noviembre 2015, 05:41 am
por furciorifa
[C++] Series de Taylor: sen(x)
Programación C/C++
Zeta255 6 11,288 Último mensaje 26 Marzo 2021, 22:36 pm
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines