Help: Why no output?
- To: mathgroup at smc.vnet.net
- Subject: [mg34941] Help: Why no output?
- From: kzhang at flashmail.com (Kezhao Zhang)
- Date: Fri, 14 Jun 2002 02:38:44 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
The behavior of the following function is puzzling to me:
In[1]:=f[x_, n___Integer] := If[Length[{n}] == 1, n , Length[x]]
In[2]:=f[0.5] (* Nothing returned. *)
In[3]:=f[{1,2}] (* Nothing returned. The length of x should be
returned *)
(* However, with the modification to f, everything works as intended
*)
In[4]:=f[x_, n___Integer] := If[Length[{n}] == 1, 1*n , Length[x]]
^^^^^^
In[5]:=f[0.5]
Out[5]:=0
In[6]:=f[{1,2}]
Out[6]:=2
Could anyone help me understand why changing n to (1*n) in the If[]
statement makes such difference? Why doesn't f[] defined in the In[1]
work?
Thanks for your help.
Kezhao Zhang
- Follow-Ups:
- Re: Help: Why no output?
- From: Tomas Garza <tgarza01@prodigy.net.mx>
- Re: Help: Why no output?