Re: simple set operations
- To: mathgroup at smc.vnet.net
- Subject: [mg57685] Re: simple set operations
- From: Torsten Coym <torsten.coym at eas.iis.fraunhofer.de>
- Date: Sat, 4 Jun 2005 03:04:31 -0400 (EDT)
- Organization: Fraunhofer Gesellschaft (http://www.fraunhofer.de/)
- References: <d7mk8b$c5m$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Edward Peschko wrote:
> hey all,
>
> I'm hesitant to ask these questions (because they are so simple) but after a
> 15 minute search through the docs I'm getting nowhere, so here goes:
>
> 1) what's the easiest way to generate a list of elements? ie:
>
> 'a' .. 'h' == { a,b,c,d,e,f,g,h }
>
> 2) Is there a quick way to check whether an element is in a set?
>
> if ('a' == (any('a','b','c','d')) { print "a is in a,b,c,d"; }
>
> The first one I see could possibly be done by 'Array', but I don't see how -
> the '#' refers to the generation of numbers, but there seems to be no
> corresponding 'letter' symbol.
>
>
> As for #2, the easiest way would be through an overloading of the '==' operator,
> but again, that doesn't seem to work..
>
> Thanks much for any help,
>
> Ed
>
1) if you want to generate a list containing *symbols* with consecutive
names (that is the way I understood the question), try this
In[1]:=
lst = ToExpression[CharacterRange["a", "h"]]
Out[1]=
{a, b, c, d, e, f, g, h}
If you just want a list of *numbers* you would go for
In[2]:=
lstnum = Range[8]
Out[2]=
{1, 2, 3, 4, 5, 6, 7, 8}
2) here we go:
In[111]:=
MemberQ[lst, a]
Out[111]=
True
I'm sure you'll figure out, how to use Print[] and If[] to achieve the
wanted behaviour.
Torsten