Otros Programadores a mí por favor (en C)

  1. #1
    ForoParalelo: Dios Avatar de JDRISGOD
    Registro
    17 feb, 15
    Ubicación
    Hokkaido
    Mensajes
    10,980
    Me gusta (Dados)
    1551
    Me gusta (Recibidos)
    1968

    Programadores a mí por favor (en C)

    Tengo que entregar una práctica en la que hay que dar el valor a f(x) en una función por partes:

    Mi código es este:

    #include <stdlib.h>
    #include <math.h>
    #include <locale.h>
    #include <stdio.h>

    float num, resultadolog, resultadoexp, resultadopot1, resultadopot2;

    int main(void) {
    printf(" Definición de f(x) por partes \n");
    printf("========================================== ==================\n");
    printf(" Valor de f(x)\n");
    printf(" ln(x) si 2<=x<=5\n");
    printf(" e^(x+1) si -1<=x<2\n");
    printf(" x^2-x si x>5\n");
    printf(" x^2-x^3 si x<-1\n");
    printf("\n");
    printf("Introduzca un número \n");
    scanf ("%f", &num);
    printf("El número introducido es %f \n", num);

    if (num>=2){
    double log(double x);
    double x=num;
    resultadolog=log(x);
    printf("f(%f) tiene el valor de %f \n", num, resultadolog);}
    else
    printf("- \n");

    if (num<=5){
    double log(double x);
    double x=num;
    resultadolog=log(x);
    printf("f(%f) tiene el valor de %f \n", num, resultadolog);}
    else
    printf("- \n");



    if (num>=-1){
    double exp(double x);
    double x=num;
    resultadoexp=exp (x + 1);
    printf("f(%f) tiene el valor de %f \n", num, resultadoexp);}
    else
    printf("- \n");

    if (num<2){
    double exp(double x);
    double x=num;
    resultadoexp=exp (x + 1);
    printf("f(%f) tiene el valor de %f \n", num, resultadoexp);}
    else
    printf("- \n");

    if (num>5){
    double pow(double x, double y);
    double x=num, y=2, y3 = 1;
    resultadopot1=pow(x,y)-pow(x,y3);
    printf("f(%f) tiene el valor de %f \n", num, resultadopot1);}
    else
    printf("- \n");
    if (num<-1){
    double pow(double x, double y);
    double x=num, y1=2, y2=3;
    resultadopot1=pow(x,y1)-pow(x,y2);
    printf("f(%f) tiene el valor de %f \n", num, resultadopot2);}
    else
    printf("- \n");


    system("pause");
    return 0;
    }




    No sé qué cojones he hecho mal, pero no me dan los resultados. Al compilar es como que al introducir un número no sabe si es mayor o menor que otro número y da mal el resultado...

  2. #2
    Lo del pelo no es mugre Avatar de issue2b
    Registro
    27 sep, 14
    Ubicación
    Detrás de un cubo
    Mensajes
    63,298
    Me gusta (Dados)
    14024
    Me gusta (Recibidos)
    30081
    c ofuscado

  3. #3
    ForoParalelo: Miembro Avatar de MonPetitCacahuete
    Registro
    14 dic, 16
    Mensajes
    1,580
    Me gusta (Dados)
    402
    Me gusta (Recibidos)
    407
    Lo siento pero yo sólo programo en B.

  4. #4
    Tu forero favorito Avatar de zeromus44
    Registro
    31 jul, 15
    Ubicación
    Verde lima
    Mensajes
    23,320
    Me gusta (Dados)
    1980
    Me gusta (Recibidos)
    13489
    If JRDISGOD=alive then tirarse por un barranco

  5. #5
    ForoParalelo: Miembro Avatar de can_tojevi
    Registro
    11 dic, 15
    Ubicación
    en el Almirante Benbow
    Mensajes
    19,622
    Me gusta (Dados)
    1742
    Me gusta (Recibidos)
    9713

  6. #6
    Chunda chunda. Avatar de DaNxMaKiNa
    Registro
    01 jun, 15
    Ubicación
    52.479761,62.185734
    Mensajes
    23,850
    Me gusta (Dados)
    14147
    Me gusta (Recibidos)
    12080
    Yo sólo entiendo de música, lo siento.

  7. #7
    Lo del pelo no es mugre Avatar de issue2b
    Registro
    27 sep, 14
    Ubicación
    Detrás de un cubo
    Mensajes
    63,298
    Me gusta (Dados)
    14024
    Me gusta (Recibidos)
    30081
    Cita Iniciado por zeromus44 Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    If JRDISGOD=alive then tirarse por un barranco
    qbasic es la salud

  8. #8
    Tequilazo at Night!! 栄光 Avatar de ArcherTron
    Registro
    29 may, 16
    Ubicación
    En la frontera digital
    Mensajes
    9,633
    Me gusta (Dados)
    3390
    Me gusta (Recibidos)
    3894
    ni puta la verdad. Y la próxima pon en subforo o tema serio

  9. #9
    ForoParalelo: Miembro Avatar de Equis
    Registro
    29 ene, 14
    Mensajes
    181
    Me gusta (Dados)
    2
    Me gusta (Recibidos)
    13
    Cita Iniciado por JDRISGOD Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    Tengo que entregar una práctica en la que hay que dar el valor a f(x) en una función por partes:

    Mi código es este:

    #include <stdlib.h>
    #include <math.h>
    #include <locale.h>
    #include <stdio.h>

    float num, resultadolog, resultadoexp, resultadopot1, resultadopot2;

    int main(void) {
    printf(" Definición de f(x) por partes \n");
    printf("========================================== ==================\n");
    printf(" Valor de f(x)\n");
    printf(" ln(x) si 2<=x<=5\n");
    printf(" e^(x+1) si -1<=x<2\n");
    printf(" x^2-x si x>5\n");
    printf(" x^2-x^3 si x<-1\n");
    printf("\n");
    printf("Introduzca un número \n");
    scanf ("%f", &num);
    printf("El número introducido es %f \n", num);

    if (num>=2){
    double log(double x);
    double x=num;
    resultadolog=log(x);
    printf("f(%f) tiene el valor de %f \n", num, resultadolog);}
    else
    printf("- \n");

    if (num<=5){
    double log(double x);
    double x=num;
    resultadolog=log(x);
    printf("f(%f) tiene el valor de %f \n", num, resultadolog);}
    else
    printf("- \n");



    if (num>=-1){
    double exp(double x);
    double x=num;
    resultadoexp=exp (x + 1);
    printf("f(%f) tiene el valor de %f \n", num, resultadoexp);}
    else
    printf("- \n");

    if (num<2){
    double exp(double x);
    double x=num;
    resultadoexp=exp (x + 1);
    printf("f(%f) tiene el valor de %f \n", num, resultadoexp);}
    else
    printf("- \n");

    if (num>5){
    double pow(double x, double y);
    double x=num, y=2, y3 = 1;
    resultadopot1=pow(x,y)-pow(x,y3);
    printf("f(%f) tiene el valor de %f \n", num, resultadopot1);}
    else
    printf("- \n");
    if (num<-1){
    double pow(double x, double y);
    double x=num, y1=2, y2=3;
    resultadopot1=pow(x,y1)-pow(x,y2);
    printf("f(%f) tiene el valor de %f \n", num, resultadopot2);}
    else
    printf("- \n");


    system("pause");
    return 0;
    }




    No sé qué cojones he hecho mal, pero no me dan los resultados. Al compilar es como que al introducir un número no sabe si es mayor o menor que otro número y da mal el resultado...
    Pero si lo he compilado y ejecutado en esta página y funciona perfecto: https://onlinegdb.com/SyY1ObetB

    Ah, vale, ya se lo que tienes mal.

    Edito: Aquí tienes el resultado: https://onlinegdb.com/By2wpblFB

    Código:
    #include <stdlib.h>
    #include <math.h>
    #include <locale.h>
    #include <stdio.h>
    
    float num, resultado;
    
    int
    main (void)
    {
      printf (" DefiniciC3n de f(x) por partes \n");
      printf ("========================================== ==================\n");
      printf (" Valor de f(x)\n");
      printf (" ln(x) si 2<=x<=5\n");
      printf (" e^(x+1) si -1<=x<2\n");
      printf (" x^2-x si x>5\n");
      printf (" x^2-x^3 si x<-1\n");
      printf ("\n");
      printf ("Introduzca un nC:mero \n");
      scanf ("%f", &num);
      printf ("El nC:mero introducido es %f \n", num);
    
      if (num < -1)
        resultado = pow (num, 2) - pow (num, 3);
      else if (num < 2)
        resultado = pow (M_E, num + 1) - num;
      else if (num < 5)
        resultado = log (num);
      else
        resultado = pow (num, 2) - num;
    
      printf ("f(%f) tiene el valor de %f \n", num, resultado);
    
      system ("pause");
      return 0;
    }
    Última edición por Equis; 13/10/2019 a las 04:35

  10. #10
    AutoBanned Avatar de despotico
    Registro
    28 abr, 18
    Mensajes
    9,467
    Me gusta (Dados)
    984
    Me gusta (Recibidos)
    2253

  11. #11
    Miembro Viril Avatar de prodigioso
    Registro
    01 ene, 17
    Ubicación
    Mordor
    Mensajes
    12,165
    Me gusta (Dados)
    2483
    Me gusta (Recibidos)
    4384
    Veo un par de paréntesis y semicorcheas mal.

  12. #12
    7 inch clit! Avatar de Ruiseñorita
    Registro
    08 may, 15
    Ubicación
    Villatravelo
    Mensajes
    26,526
    Me gusta (Dados)
    10255
    Me gusta (Recibidos)
    12753
    Póngalo en H

  13. #13
    ForoParalelo: Miembro Avatar de Tommy Pollon
    Registro
    30 ago, 19
    Mensajes
    1,473
    Me gusta (Dados)
    123
    Me gusta (Recibidos)
    566
    a mí me sacas del pascal y me pierdo

  14. #14
    ForoParalelo: Dios Avatar de JDRISGOD
    Registro
    17 feb, 15
    Ubicación
    Hokkaido
    Mensajes
    10,980
    Me gusta (Dados)
    1551
    Me gusta (Recibidos)
    1968
    Cita Iniciado por Equis Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    Pero si lo he compilado y ejecutado en esta página y funciona perfecto: https://onlinegdb.com/SyY1ObetB

    Ah, vale, ya se lo que tienes mal.

    Edito: Aquí tienes el resultado: https://onlinegdb.com/By2wpblFB

    Código:
    #include <stdlib.h>
    #include <math.h>
    #include <locale.h>
    #include <stdio.h>
    
    float num, resultado;
    
    int
    main (void)
    {
      printf (" DefiniciC3n de f(x) por partes \n");
      printf ("========================================== ==================\n");
      printf (" Valor de f(x)\n");
      printf (" ln(x) si 2<=x<=5\n");
      printf (" e^(x+1) si -1<=x<2\n");
      printf (" x^2-x si x>5\n");
      printf (" x^2-x^3 si x<-1\n");
      printf ("\n");
      printf ("Introduzca un nC:mero \n");
      scanf ("%f", &num);
      printf ("El nC:mero introducido es %f \n", num);
    
      if (num < -1)
        resultado = pow (num, 2) - pow (num, 3);
      else if (num < 2)
        resultado = pow (M_E, num + 1) - num;
      else if (num < 5)
        resultado = log (num);
      else
        resultado = pow (num, 2) - num;
    
      printf ("f(%f) tiene el valor de %f \n", num, resultado);
    
      system ("pause");
      return 0;
    }
    Muchísimas gracias shur, cómo te lo agradezco. Podrías explicarme qué significa M_E?

  15. #15
    Hurry up! Avatar de Aureolo
    Registro
    28 mar, 19
    Mensajes
    5,065
    Me gusta (Dados)
    2205
    Me gusta (Recibidos)
    3018
    Cita Iniciado por JDRISGOD Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    Muchísimas gracias shur, cómo te lo agradezco. Podrías explicarme qué significa M_E?
    M_E = Mecago_Endios


    de nada

    En serio, ya ni me acuerdo de lo básico, que asco de hacerse viejo...

  16. #16
    ForoParalelo: Dios Avatar de JDRISGOD
    Registro
    17 feb, 15
    Ubicación
    Hokkaido
    Mensajes
    10,980
    Me gusta (Dados)
    1551
    Me gusta (Recibidos)
    1968
    Cita Iniciado por Aureolo Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    M_E = Mecago_Endios


    de nada

    En serio, ya ni me acuerdo de lo básico, que asco de hacerse viejo...
    Es el número e jajajajaj

  17. #17
    ForoParalelo: Miembro Avatar de Equis
    Registro
    29 ene, 14
    Mensajes
    181
    Me gusta (Dados)
    2
    Me gusta (Recibidos)
    13
    Cita Iniciado por JDRISGOD Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    Muchísimas gracias shur, cómo te lo agradezco. Podrías explicarme qué significa M_E?
    Cómo te fue? Entendiste el código?

  18. #18
    Lo del pelo no es mugre Avatar de issue2b
    Registro
    27 sep, 14
    Ubicación
    Detrás de un cubo
    Mensajes
    63,298
    Me gusta (Dados)
    14024
    Me gusta (Recibidos)
    30081
    Cita Iniciado por Equis Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    Cómo te fue? Entendiste el código?

  19. #19
    Estoy caliente Avatar de quemadillas
    Registro
    02 ago, 14
    Ubicación
    Gerona, Jovenlandia
    Mensajes
    16,139
    Me gusta (Dados)
    11396
    Me gusta (Recibidos)
    6806
    Cita Iniciado por Aureolo Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    M_E = Mecago_Endios


    de nada

    En serio, ya ni me acuerdo de lo básico, que asco de hacerse viejo...
    Yo lo hice hace menos de 2 años y prácticamente no me acuerdo de nada

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •