On Tue, 2008-12-16 at 16:45 -0300, Carlos Ríos Vera wrote:
> 2008/12/16 Horst H. von Brand <vonbr...@inf.utfsm.cl>
> 
> > Alvaro Herrera <alvhe...@alvh.no-ip.org> wrote:
> > > Alvaro Herrera escribió:
> > > > Juan Manuel Doren escribió:
> > > > > > Estimados existe algun comando en linux donde pueda convertir de
> > formato
> > > > > > exponencial a formato numeros de coma flotante ejemplo:
> > > > > >  0.01e+01 ==> 0.1
> > >
> > > Mas facil todavia:
> > >
> > > /usr/bin/printf "%f\n" 0.01e+03
> > >
> > > (debe ser /usr/bin/printf porque si lo pones por si solo, toma el
> > > builtin de bash, que no entiende la notacion cientifica)
> >
> > Segun mi manual aca (bash-3.2-31.fc11.x86_64) no tiene esa restriccion, no
> > tengo idea cual usa...
> 
> 
> En mi caso pasa esto:
> 
> crosv...@moe64:~$ printf "%f\n" '0.01e+01'
> bash: printf: 0.01e+01: invalid number
> 0,000000
> crosv...@moe64:~$ /usr/bin/printf "%f\n" '0.01e+01'
> 0,100000
> crosv...@moe64:~$ bash --version
> GNU bash, version 3.2.48(1)-release (i686-pc-linux-gnu)
> Copyright (C) 2007 Free Software Foundation, Inc.
> 
> Estoy con ArchLinux

creo que eso es problema del idioma:

[ydos...@alcatraz ~]$ LC_NUMERIC="en_US" bash
[ydos...@alcatraz ~]$ printf "%.2f\n" '0.01e+01'
0.10

[ydos...@alcatraz ~]$ LC_NUMERIC="es_CL" bash
[ydos...@alcatraz ~]$ printf "%f\n" '0.01e+01'
bash: printf: 0.01e+01: invalid number
0,000000
[ydos...@alcatraz ~]$ printf "%.2f\n" '0,01e+01'
0,10



> 
> 
> Saludos
> 
-- 
Yonathan H. Dossow Acun~a                              http://2o.cl
Estudiante Ingenieria Civil Informatica
Unidad de Servicios de Computacion e Internet  Fono: +56 32 2654367
Universidad Tecnica Federico Santa Maria          Valparaiso, Chile

Attachment: signature.asc
Description: This is a digitally signed message part

Responder a