Re: How to get elements satisfying specific condition from a list
- To: mathgroup at smc.vnet.net
- Subject: [mg123397] Re: How to get elements satisfying specific condition from a list
- From: Bob Hanlon <hanlonr357 at gmail.com>
- Date: Mon, 5 Dec 2011 05:16:56 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
Avoid using initial capital letters for variable names. Use Set ( = ) rather than SetDelayed ( := ) for defining something that will not change from one call to the next. Select and Cases are equivalent for these simple examples: b = Table[{x, y}, {x, 1, 6}, {y, 1, 6}]; Select[Flatten[b, 1], Total[#] > 9 &] {{4, 6}, {5, 5}, {5, 6}, {6, 4}, {6, 5}, {6, 6}} Cases[Flatten[b, 1], _?(Total[#] > 9 &)] {{4, 6}, {5, 5}, {5, 6}, {6, 4}, {6, 5}, {6, 6}} Select[Range[9], Sqrt[#] > 2 &] {5, 6, 7, 8, 9} Cases[Range[9], _?(Sqrt[#] > 2 &)] {5, 6, 7, 8, 9} However, Sqrt[#] > 2& is more simplely written as # > 4& Bob Hanlon On Sun, Dec 4, 2011 at 2:51 AM, e-changb <e-changb at hanmail.net> wrote: > Hi, please help me if you can.. Let > > B:= Table[{x, y}, {x, 1, 6}, {y, 1, 6}] > > It is clear that B has 36 elements. > > I want to get the list of elements satisfying > 'the first component + second component is bigger than 9' > > so that the answer is > > {{5,5},{5,6},{6,5},{6,6}}. > > In fact, I have no idea for following even simpler problem. : Let A be a set of all natural numbers less than 10. Find every element whose squre root is bigger than 2. (needless to say the answer is {5,6,7,8,9}) > > Can you help me ? >