Re: Programming Fail

• To: mathgroup at smc.vnet.net
• Subject: [mg132027] Re: Programming Fail
• From: Alex Krasnov <akrasnov at cory.eecs.berkeley.edu>
• Date: Tue, 19 Nov 2013 02:57:15 -0500 (EST)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• Delivered-to: l-mathgroup@wolfram.com
• Delivered-to: mathgroup-outx@smc.vnet.net
• Delivered-to: mathgroup-newsendx@smc.vnet.net
• References: <20131117232215.A9F846A15@smc.vnet.net>

```The main issue is that A uses strings but pitchMap uses integers. Here are
three possible solutions:

In:	A = NestList[StringReplace[#, {"0" -> "2", "2" -> "12", "1" -> "23", "3" -> "45", "4" -> "56"}] &, "0", 7];
In:	pitchMap = {"0" -> "B4", "1" -> "C4", "2" -> "D4", "3" -> "E4", "4" -> "F4", "5" -> "G4", "6" -> "A4"};

In:	A = NestList[StringReplace[#, {"0" -> "2", "2" -> "12", "1" -> "23", "3" -> "45", "4" -> "56"}] &, "0", 7];
In:	pitchMap = {0 -> "B4", 1 -> "C4", 2 -> "D4", 3 -> "E4", 4 -> "F4", 5 -> "G4", 6 -> "A4"};

In:	A = NestList[Flatten[Replace[#, {0 -> 2, 2 -> {1, 2}, 1 -> {2, 3}, 3 -> {4, 5}, 4 -> {5, 6}}, 1]] &, {0}, 7];
In:	pitchMap = {0 -> "B4", 1 -> "C4", 2 -> "D4", 3 -> "E4", 4 -> "F4", 5 -> "G4", 6 -> "A4"};

Unfortunately, Mathematica displays 0 and "0" in the same way. You can use
FullForm in order to avoid confusion.

Alex

On Sun, 17 Nov 2013, Dean Rosenthal wrote:

> Hi:
>
> My question is going to take all of you about a split second to answer.
> Sadly, programming is something I seem to be congenitally incapable of
> teaching myself and doing well.  I usually just cut and paste specifics
> into prewritten algorithms.
>
> If you do this
>
> pitchMap = {1 -> {"C4", "D4"}, 2 -> "D4", 3 -> "E4", 4 -> "F4", 5 -> "G4"};
>
>
>
> You get a music player and can play the result.
>
>
> If you do this:
>
>
> A = NestList[
>  StringReplace[#, {"0" -> "2", "2" -> "12", "1" -> "23", "3" -> "45",
>     "4" -> "56"}] &, "0", 7]
>
> pitchMap = {0 -> "B4", 1 -> "C4", 2 -> "D4", 3 -> "E4", 4 -> "F4", 5 ->
> "G4",
>   6 -> "A4"};
>
>
>
> You get nothing, just output.  See what I did there?  I substituted,
> because that's what you do if you don't know how to program!  On the face
> of things, I can't see why it wouldn't work, but I've wasted at least an
> hour going through documentation and Googling and trying different
> approaches.  I'm not a programmer and I can't seem to teach myself how to
> do this, ideas?
>
>
> Thanks,
>
>
> Dean
>
>

```

• Prev by Date: Re: Programming Fail
• Next by Date: Re: Programming Fail
• Previous by thread: Programming Fail
• Next by thread: Re: Programming Fail