Mantener formato de numeros
Publicado por Ruben (16 intervenciones) el 28/05/2015 18:49:47
Hola,
estoy haciendo un archivo que servira de input para otro programa diferente a Matlab. En este archivo necesito que el primer valor sea siempre 18, algo asi:
18
5.0000000e-03 2.5762005e+01 2.8656246e+02 1.4778423e-01 3.2121000e-08
1.0000000e-02 2.3897179e+01 2.8526408e+02 1.5049343e-01 3.2151000e-08
Pero Matlab me lo cambia siempre a:
1.8000000e+01
5.0000000e-03 2.5762005e+01 2.8656246e+02 1.4778423e-01 3.2121000e-08
1.0000000e-02 2.3897179e+01 2.8526408e+02 1.5049343e-01 3.2151000e-08
Hay alguna forma de mantener el formato en 18? En la solucion que siempre me da Matlab el segundo programa no funciona. Este cambio me aparece usando save y dejando ese 18 como numero.
Al usar num2str el resultado es que el 18 pasa a: 4.9000000e+01 5.6000000e+01
Con fprintf no me termina de hacer caso: nlevel=fprintf('%d',round(nlevel)); (nlevel es el nombre de la variable que vale 18).
Alguien conoce alguna solucion para esto?
Gracias
Ruben
estoy haciendo un archivo que servira de input para otro programa diferente a Matlab. En este archivo necesito que el primer valor sea siempre 18, algo asi:
18
5.0000000e-03 2.5762005e+01 2.8656246e+02 1.4778423e-01 3.2121000e-08
1.0000000e-02 2.3897179e+01 2.8526408e+02 1.5049343e-01 3.2151000e-08
Pero Matlab me lo cambia siempre a:
1.8000000e+01
5.0000000e-03 2.5762005e+01 2.8656246e+02 1.4778423e-01 3.2121000e-08
1.0000000e-02 2.3897179e+01 2.8526408e+02 1.5049343e-01 3.2151000e-08
Hay alguna forma de mantener el formato en 18? En la solucion que siempre me da Matlab el segundo programa no funciona. Este cambio me aparece usando save y dejando ese 18 como numero.
Al usar num2str el resultado es que el 18 pasa a: 4.9000000e+01 5.6000000e+01
Con fprintf no me termina de hacer caso: nlevel=fprintf('%d',round(nlevel)); (nlevel es el nombre de la variable que vale 18).
Alguien conoce alguna solucion para esto?
Gracias
Ruben
Valora esta pregunta


0