Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2008

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

Search the Archive

Re: Is there a simple way to transform 1.1 to 11/10?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg93008] Re: [mg92968] Is there a simple way to transform 1.1 to 11/10?
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Wed, 22 Oct 2008 05:41:40 -0400 (EDT)
  • References: <200810211024.GAA04964@smc.vnet.net>

I think this will do it:

ff[z_] := With[{w = RealDigits[z]},FromDigits[MapAt[# /. {x___, a_ /;  
a != 0, 0 ...} :> {x, a} &, w, 1]]]

for example:

  ff[1.01101]
101101/100000

  ff[1.000000001]
1000000001/1000000000

etc.

Andrzej Kozlowski



On 21 Oct 2008, at 19:24, Alain Cochard wrote:

>
>
> The obvious
>
>    In[1]:= x=1.1`Infinity
>
> is not syntactically correct.
>
> I understand that SetPrecision[1.1,Infinity] does not work either:
>
>    In[3]:= SetPrecision[1.1,Infinity]
>
>            2476979795053773
>    Out[3]= ----------------
>            2251799813685248
>
>    In[4]:= N[%,20]
>
>    Out[4]= 1.1000000000000000888
>
> I searched the newsgroup and thought I had the solution with  
> Rationalize:
>
>    In[5]:= Rationalize[1.1,0]
>
>            11
>    Out[5]= --
>            10
>
> But
>
>    In[9]:= Rationalize[1.000000001,0]
>
>            999999918
>    Out[9]= ---------
>            999999917
>
>    In[10]:= N[%,20]
>
>    Out[10]= 1.0000000010000000830
>
> So any simple way?
>
> Thanks,
> Alain
>



  • Prev by Date: Re: BinaryReadList with Mixed Types
  • Next by Date: Re: Executing an external notebook within another notebook
  • Previous by thread: Re: Is there a simple way to transform 1.1 to 11/10?
  • Next by thread: Re: Is there a simple way to transform 1.1 to 11/10?