Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2005
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2005

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

Search the Archive

Re: A list of numbers without "73"

  • To: mathgroup at smc.vnet.net
  • Subject: [mg63022] Re: A list of numbers without "73"
  • From: Bill Rowe <readnewsciv at earthlink.net>
  • Date: Sun, 11 Dec 2005 04:56:43 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

On 12/10/05 at 6:03 AM, thomas.??? at balliol.ox.ac.uk (Thomas
Schmelzer) wrote:

>S(i) should be a list of positive integers without the substring
>"73".

>My code seems to be very inefficient. I multiply all numbers with 0
>if they contain "73", sort the new list, make the union (remove
>double elements) and delete the first element. Therefore it is
>necessary to use an if statement in order not to delete the first
>element of the numbers 1-9. Any more sophisticated ideas?

>L := Table[k, {k, 1, 9}]

>Delete[Union[
>Table[k*(1 - Boole[StringMatchQ[ToString[k], "*73*"]]), {k,
>10^(i - 1), 10^i - 1}]], 1]]

It appears you want to generate a list of positive integers between 1 and 10^n - 1 with all integers having the sequence 73 being deleted. If so, a simpler approach would be

s[n_]:=
Select[Range[10^n-1], !StringMatchQ[ToString@#, "*73*"]&]

checking that this works as intended

In[55]:= Complement[Range[999], s[3]]

Out[55]=
{73, 173, 273, 373, 473, 573, 
  673, 730, 731, 732, 733, 
  734, 735, 736, 737, 738, 
  739, 773, 873, 973}
--
To reply via email subtract one hundred and four


  • Prev by Date: Re: A list of numbers without "73"
  • Next by Date: Re: A list of numbers without "73"
  • Previous by thread: Re: A list of numbers without "73"
  • Next by thread: Re: A list of numbers without "73"