RE: How to Return from within a Table[]-Command?
- To: mathgroup at smc.vnet.net
- Subject: [mg33764] RE: [mg33728] How to Return from within a Table[]-Command?
- From: "David Park" <djmp at earthlink.net>
- Date: Thu, 11 Apr 2002 02:14:33 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Detlef, Use Throw and Catch. Divide2[L_List] := Catch[Module[{newlist}, newlist = Table[ If[IntegerQ[L[[i]]], i/2, Throw["vector not valid."]; ] , {i, 1, Length[L]} ]; newlist ]] Divide2[{2, 3, a}] "vector not valid." Divide2[{2, 3, 4.5}] "vector not valid." Divide2[{2, 3, 4}] {1/2, 1, 3/2} David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ > From: Detlef Mueller [mailto:dmueller at mathematik.uni-kassel.de] To: mathgroup at smc.vnet.net > > > Hello, > > I wanted to scan trough al List, building a new > List, but aborting, if one Element of the first > List violates a special Condition ... > say for example: > > Divide2[L_List] := Module[{}, > Table[ > If[IntegerQ[L[[i]]], > i/2, > Return["vector not valid."]; > ] > , {i, 1, Length[L]} > ] > > ... > > ] > > But this results: > > In[13]:= Divide2[{2,3,a}] > Out[13]= {1/2, 1, Return["vector not valid."]} > > Wich is of course not what I want. > > Greetings > > Detlef >