# More digits from octave

Hi, how can I get all the 15/16 digits from a command like pi = octave('pi')?

More digits from octave

Hi, how can I get all the 15/16 digits from a command like pi = octave('pi')?

add a comment

1

Hi, I found myself a solution, for instance:

```
a=Matrix(RR,octave('sprintf("%.16e ",rand(1,4))'))
```

0

As far as I know, the "octave" command really just gets you an interface that allows you to pass strings as "typed in to octave" and get you back strings as printed by octave. So:

```
octave:1> 0.123456789
ans = 0.12346
```

suggests octave is naturally stingy with printing digits. In order to get more digits back via the octave interface, you should do whatever you do to normally coerce octave to print more digits. Perhaps https://www.gnu.org/software/octave/d... helps.

0

Starting Octave just to get a numerical value of pi is unnecessarily slow.

If you need a floating-point approximation to pi, I would suggest:

```
sage: pi = RDF.pi()
sage: pi
3.141592653589793
```

But maybe you have other reasons to use Octave?

Sorry, try this instead a=octave('0.123456789'). I chose pi just to be short. I get a=0.123457, lost two digits.

Asked: **
2016-07-22 05:37:53 -0500
**

Seen: **165 times**

Last updated: **Jul 29 '16**

Converting Octave vector to Sage list

Sage Notebook: how to set the path for Octave?

Octave works in command line but not in notebook

Is there a more efficient way to compute the first digit of a number?

Running octave from the sage notebook

Changing number of decimal digits displayed in output

How to limit the number digits of constants in displayed real numbers?

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.