Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: These Simple Four Lines of Mathematic Confound Me -- Bug?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg121437] Re: These Simple Four Lines of Mathematic Confound Me -- Bug?
  • From: David Bailey <dave at removedbailey.co.uk>
  • Date: Thu, 15 Sep 2011 04:39:13 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <j4prlp$fne$1@smc.vnet.net>

On 14/09/2011 10:20, James Stein wrote:
> I've boiled this puzzlement down to bare bones:
>
>     Clear [ g ];
>     g := { NumberForm [ 13.0, { 5, 3 } ] };
>     g
>     % // N
>
> Line 3 gives the output:  {13.0}  (as expected)
> Line 4 gives the output:  {13.}     but first gives this error message:
>
> NumberForm::iprf :  "Formatting specification =91=99{\"5.\", \"3.\"} should be \
> a positive integer or a pair of positive integers."
>
> Line 4 seems to cause 'g' to be called. Why?
> And how has the formatting spec {5,3} been converted away from integers?
> (running Mathematica 8.0.1.0 on a Macintosh)
>
Look at g//FullForm

You will see that NumberForm (like MatrixForm and TableForm, and a 
number of other functions) becomes part of the expression. Your specific 
error happens because the numbers 5 an3 get converted to Reals, which 
are not suitable for NumberForm.

The answer is to never (at least unless you really know what you are 
doing) assign anything to an expression involving any of the above 
functions (NumberForm, etc.), or embed those functions in more calculations.

David Bailey
http://www.dbaileyconsultancy.co.uk





  • Prev by Date: help with GraphicsGrid
  • Next by Date: Re: How create new style sheet- Mathematica 8
  • Previous by thread: Re: These Simple Four Lines of Mathematic Confound Me -- Bug?
  • Next by thread: Changing Style Sheets in 8.0