Re: strange bug?
- To: mathgroup at smc.vnet.net
- Subject: [mg79201] Re: strange bug?
- From: dimitris <dimmechan at yahoo.com>
- Date: Sat, 21 Jul 2007 04:20:00 -0400 (EDT)
- References: <f7n4k9$24e$1@smc.vnet.net><f7pqc5$hd$1@smc.vnet.net>
On 20 , 11:05, dimitris <dimmec... at yahoo.com> wrote:
> On 19 , 10:42, "Jeremy Price" <cfga... at u.washington.edu> wrote:
>
>
>
>
>
> > I think I've found a bug in mathematica 5.2,
>
> > In[418]:=
> > $Version
>
> > Out[418]=
> > 5.2 for Microsoft Windows (June 20, 2005)
>
> > When I run, eg,
>
> > In[416]:= IntegerPart[10*5.1]
>
> > Out[416]= 51
>
> > I get what I expect. But when I run the same thing in a loop,
>
> > For[n = 1, n < 20, n = n + .1,
> > Print[n, " ", IntegerPart[10*n]]
> > ]
>
> > I get output like:
>
> > >From In[415]:= 4.2 42
> > >From In[415]:=4.3 43
> > >From In[415]:=4.4 44
> > >From In[415]:=4.5 45
> > >From In[415]:=4.6 46
> > >From In[415]:=4.7 47
> > >From In[415]:=4.8 48
> > >From In[415]:=4.9 48
> > >From In[415]:=5. 49
> > >From In[415]:=5.1 50
> > >From In[415]:=5.2 51
>
> > Any idea what's going on here or how to fix it?
>
> What exactly do you want to get from In[415]?
>
> Perhaps?
>
> For[n = 1, n < 20, n = n + .1,
> Print[ " ", IntegerPart[10*n]] ]
>
> BTW, why don't you avoid loops?
>
> (IntegerPart[10*#1] & ) /@ Range[1, 10, 0.1]
> Print[#]&/@%;
>
> D.S.A.- -
>
> - -
I didn't realize what was your problem1
Use
For[n = 1, n < 20, n = n + 1/10,
Print[N[n], " ", IntegerPart[10*n]]
]
Or better
({N[#1], IntegerPart[10*#1]} & ) /@ Range[1, 10, 1/10];
Print[#[[1]]," ",#[[2]]]&/@%;
D.S.A.