MathGroup Archive 1999

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: the simplest way?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg16475] RE: [mg16350] the simplest way?
  • From: "Jean-Marie THOMAS" <jmthomas at agat.net>
  • Date: Tue, 16 Mar 1999 03:59:36 -0500
  • Sender: owner-wri-mathgroup at wolfram.com

Try this:
l=Table[Random[Integer,{1,100}],{10}]

First question:
Catch[Scan[If[OddQ[#],Throw[{#,False}]]&,l]]

Second question:
l/.x_->x-1

Third question:
Map[f,l]

All these are Mathematica basics!


****************************************
Jean-Marie THOMAS
mailto:jmthomas at agat.net
Conseil et Audit en Ingenierie de Calcul
Strasbourg, France
http://www.agat.net
****************************************

-----Original Message-----
From: Antoine Zahnd [mailto:antoine.zahnd at iprolink.ch]
To: mathgroup at smc.vnet.net
Subject: [mg16475] [mg16350] the simplest way?


Hello,

I have two questions with lists, each time to avoid the Length function.


1) For example, how to write a function that will go thru the elements of a
list of
integers, and will return False as soon as an odd number is found, without
using
Length?


With Length it is easy, but not so clean ...
f[l_]:= Block[{k},For[k=1,k<=Length[l],k++,If[OddQ[l[[k]]],Return[True]]];
False];


2) Is it possible to write the following function without Length?

l={1,2,3};
Table[ReplacePart[l,l[[i]]-1,i],{i,1,Length[l]}]
{{0,2,3},{1,1,3},{1,2,2}}

More generally, is there a way to write something like:
(for x in l ... collect (f x) )	, and the collection of the (f x) are
returned
in a list?

I don't see how to write a Lisp style dolist function in Mathematica
without the Length!

Hope that the questions make sens ...

Thank you very much for your help.

antoine.zahnd at iprolink.ch




  • Prev by Date: RE: Date in Footers
  • Next by Date: RE: Eliminating (-1)^2
  • Previous by thread: Re: the simplest way?
  • Next by thread: Re: the simplest way?