Mostrar un float o double

Nico -  
 Nico -
Hola.

¿Alguien podría hacerme un pequeño programa muy simple que use la función write para mostrar un float o double con signo o sin él?

Tipo, me gustaría mostrar un float a = -3.52.

Tengo un programa que hace este tipo de cosas, pero que solo funciona con ints.

Como no sé cómo están codificados los float y double... estoy un poco perdido.

Gracias de antemano.

11 respuestas

  1. Nico
     
    Ehm pero LOL, respuestas 6-7 años después :).

    Es amable pero ya tengo mi título desde hace bastante tiempo, gracias igual ;).

    además ya no sé cómo lo había hecho .... jeje
    54
  2. Bob
     
    #include <stdio.h>
    #include <stdlib.h>

    signed int main()
    {
    float x;
    x = -3.52;
    printf("%f", x); // soit "%f" ou "%e" ou "%g"
    return EXIT_SUCCESS;
    }

    Si ça t'intéresse les nombres à virgule flottante sont définis par la norme IEEE 754 fait une recherche et tu en sauras plus sur le codage de ces nombres en particulier leur précision. Il n'y a pas besoin de définir le signe car ils sont tous signés dans leur codage.
    5
  3. Nico
     
    LOL, justamente no tenemos el derecho a printf, demasiado fácil...

    El objetivo de nuestro ejercicio es precisamente volver a codificar el printf de la libC.
    Por eso me gustaría rehacer la visualización de los float.
    2
  4. Bob
     
    Hacer C sin C es como codificar sin un teclado, así que a menos que te diviertas con las interrupciones en ASM, no veo cómo hacer un código estándar sin printf.
    1
  5. Nico
     
    Y sin embargo... tengo que hacerlo.

    ¿De lo contrario, cómo puedo mostrar el carácter "%" con printf?

    De hecho, busco una página de manual en francés si es posible, de las opciones de printf.
    1
  6. Lifely
     
    Ah Ah, la gente de Epitech está quemada a kilómetros :D

    Bueno, entonces para los demás, informense sobre Epitech en lugar de decir que programar sin la librería C es nulo, es instructivo y ¡no podrás decir nada!!

    ¡Refactura tantas funciones del sistema como nosotros y entonces podremos hablar!!
    No creo que sigáis teniendo la misma forma de pensar !

    %% --> Print %

    Luego, para los float, buena pregunta, debe haber una forma, pero personal para la cantidad de veces que lo vayas a usar :D
    En claro, es lo que hago en último lugar!!
    1
    1. Lancazar Mensajes publicados 11 Estado Miembro 2
       
      "Ah Ah, la gente de Epitech está quemada a kilómetros :D"

      quieres decir, ¿a su orgullo desmesurado?
      ¿Cómo se supone que debamos saber que no desea usar las funciones básicas?

      Para los floats, no es tan complicado: consulta la IEEE 754, entonces puedes observar que ciertos bits contienen ciertas informaciones.
      https://fr.wikipedia.org/wiki/IEEE_754

      Si reescribes tu función printf a la manera de gcc, por ejemplo, debes usar los flotantes de doble precisión.

      ¿eso te ayuda?
      0
  7. Inkognito
     
    Lol, ¡está claro!

    Para mostrar floats, haz de nuevo tu my_put_nbr con floats justamente ;)
    1
  8. Nico
     
    Oups, olvidé precisar que hacía falta codificarlo en C.
    0
  9. Nico
     
    Sí, gracias, eso no me ayuda mucho.

    ¿Pero para mi mostrador de float, alguien tiene alguna idea?
    0
    1. kiki
       
      para mostrar un float
      float x;
      x = -3.52;
      printf("%f", x);

      para mostrar el %
      printf("\%");
      0
      1. lami20j Mensajes publicados 21506 Fecha de registro   Estado Moderador, Colaborador de seguridad Última intervención   3 571 > kiki
         
        Hi,

        also
        printf("%%");

        --
        lami20j
        0