Buenas, ¿alguien me dice si se puede obtener más precisión que la de long double en C? Lo pregunto por que estoy haciendo un programa que me calcule pi (sin un número de cifras definido, hasta que lo cierre) y ¡long double se queda corto para pi!
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúfn('a','b','c');
int c=32; printf("Intento patético de kernel.\nLa variable c es %d\n","red",c);
#ifndef _STDARG_H
#define _STDARG_H
typedef char *va_list;
#define __va_rounded_size(TYPE) \
(((sizeof (TYPE) + sizeof (int) - 1) / sizeof (int)) * sizeof (int))
#ifndef __sparc__
#define va_start(AP, LASTARG) \
(AP = ((char *) &(LASTARG) + __va_rounded_size (LASTARG)))
#else
#define va_start(AP, LASTARG) \
(__builtin_saveregs (), \
AP = ((char *) &(LASTARG) + __va_rounded_size (LASTARG)))
#endif
void va_end (va_list);
#define va_end(AP)
#define va_arg(AP, TYPE) \
(AP += __va_rounded_size (TYPE), \
*((TYPE *) (AP - __va_rounded_size (TYPE))))
#endif /* _STDARG_H */
int printf(char *text, char *color, ...)
#include <stdarg.h>
int printf(char *text, char *color, ...) //Esto es lo que he oído.
{
/*
Aquí iría lo que no tengo ni idea. Si no pongo la de color consigo que me coja la variable
texto, pero las "no obligatorias" me las deforma. Son unos int. Por ejemplo, pongo 32 y
me sale 1034..., en fín, que se equivoca. Si pongo la de color... ni se ejecuta.
*/
return 0;
}
#include <stdio.h>
#include <string.h>
main(int argc, char *argv[])
{
double n1, n2, n3;
n1=atof(argv[1]);
n2=atof(argv[2]);
n3=atof(argv[3]);
printf("La variable n1= %f\nLa variable n2= %f\nLa variable n3= %f\n", n1, n2, n3 );
return 0;
}
$ ./pam 3 4 5
La variable n1= 524288.000000
La variable n2= 0.000000
La variable n3= 262144.000000
$
#include <stdio.h>
#include <string.h>
main(int argc, char *argv[])
{
float n1, n2, resultado;
n1=atoi(argv[1]);
n2=atoi(argv[2]);
resultado = n1 + n2;
printf("El resultado de sumar %f y %f es: %f\n", n1, n2, resultado);
salir();
}
int salir()
{
return 0;
}
$ ./pam 3.5 + 3.4
El resultado de sumar 3.000000 y 3.000000 es: 6.000000
$
$ ./pam 3.5 + 3.4
El resultado de sumar 3.500000 y 3.400000 es: 6.900000
$