Hi Linda,
What exactly do you mean when you say you can't get toss to work?

As far as I can see pretty much all of what you've written below works fine.
The only thing that I imagine isn't working as you expect is the
definition of c.


   c=: f''   NB. roll 2 six-sided dice 10 times and store noun result in c

If you toss again then you'll re-roll the dice. If you just want to
visualize the dice for c, then you just need to display c.
   (dice {~ <:) c

On Sun, Dec 4, 2011 at 10:31 PM, Linda Alvord <lindaalv...@verizon.net> wrote:
> Me too.
>
> toss =: (dice =: (6 6 6#:12 145 157 185 197 215)<@:{"1 2 (#:i.6){' o'){~ 2
> 10 ?@$ 6:
> a=:' o'
> b=:#:i.6
> d=:b{a
> e=:6 6 6#:12 145 157 185 197 215
> dice=: e<@:{"1 2 d
> dice
> f=:2 10?@ $ 6:
> c=: 13 :'(2 10?@$6:){dice'
> c''
> toss =:dice{~f
> c''
> toss''
> c''
> toss''
> c''
> 5!:2 ;:'a b d e dice f c toss'
>
> I can't get the toss to work
>
> Linda
>
> -----Original Message-----
> From: programming-boun...@jsoftware.com
> [mailto:programming-boun...@jsoftware.com] On Behalf Of Ric Sherlock
> Sent: Sunday, December 04, 2011 4:09 AM
> To: Programming forum
> Subject: Re: [Jprogramming] Turkey Roll - Challenge 2
>
> NB. Inspired by Henry's dice:
>
> facechars=: ' o'
> facerows=: #: i.6
> faces=: 6 #.inv 12 145 157 185 197 215
> dice=: <"2 facechars {~ facerows {~ faces   NB. create dice
> dvals=: 1 + i. # dice
>
> NB. Sort of what you've asked for:
>
> throw=: ] {~ [: ? [ $ [: # ]                NB. verb to throw dice
> throw210=: 2 10 throw ]                     NB. throw 2 dice 10 times
> displayDi=: dice {~ <:                      NB. show dice
> toss=: [: displayDi throw210                NB. throw 2 dice 10 times
>
>   dvals
> 1 2 3 4 5 6
>   throw210 dvals
> 2 3 6 4 5 3 5 5 1 5
> 5 3 3 5 5 3 2 4 3 4
>   displayDi throw210 dvals  NB. display as toss as dice
>   toss dvals                NB. equivalent as single verb
>   toss dvals
>
> I don't really like hiding the assignment of a global noun inside the
> verb toss but if I had to do it:
>
> tossc=: 3 : 'displayDi c =: throw210 y'
>
> On Sun, Dec 4, 2011 at 4:40 AM, Linda Alvord <lindaalv...@verizon.net>
> wrote:
>> I'm comparing tosses, so could you match this in your own style:
>>
>> sla=: 13 :'cla=:1+? 2 10$y'
>> tossla=: 13 :'(<"2)3 3$"1(<:sla y){d'
>> tossla 6
>> cla
>> tossla 6
>> cla
>>
>> My  c  is a noun of the actual "dice" that are tossed.  The display should
>> no longer be necessary for everyone to know what is happening.
>>
>> Toss will then require the number of faces on the die.  This will ultimate
>> be the result of a toss.
>>
>> throwrs=: ] {~ [: ? [ $ [: # ]
>> tossrs=: 2 10 throw dice
>>
>> Thanks in advance.  I'm enjoying your style.
>>
>> Linda
>>
>> -----Original Message-----
>> From: programming-boun...@jsoftware.com
>> [mailto:programming-boun...@jsoftware.com] On Behalf Of Ric Sherlock
>> Sent: Thursday, December 01, 2011 6:01 AM
>> To: Programming forum
>> Subject: Re: [Jprogramming] Turkey Roll - Challenge 2
>>
>> The following is getting away from the actual rules as of the task but
>> is perhaps useful nonetheless ...
>>
>> From a storage and processing POV, it will be leaner and faster not to
>> store the dice boxed. The boxing is nice for display purposes though
>> so that could be made a separate verb.
>>
>> facerows=: 0 0 0,1 0 0,0 1 0,0 0 1,:1 0 1   NB. row types on faces
>> facechars=: ' o'                            NB. chars used to draw faces
>> faces=: 0 2 0,1 0 3,1 2 3,4 0 4,4 2 4,:4 4 4  NB. define faces as rows
>> dice=: facechars {~ facerows {~ faces       NB. create dice
>> displayDice=: [: smoutput <"2               NB. display boxed di
>> throw=: ] {~ [: ? [ $ [: # ]                NB. verb to throw dice
>> toss=: 2 10 throw ]                         NB. throw 2 dice 10 times
>> sumThrows=: [: +/ [: ([: +/ ,)"2 'o' = ]    NB. sum each throw
>> fd=: [: /:~ ({. , #)/.~                     NB. calc frequency
> distribution
>>
>>   displayDice dice
>> +---+---+---+---+---+---+
>> |   |o  |o  |o o|o o|o o|
>> | o |   | o |   | o |o o|
>> |   |  o|  o|o o|o o|o o|
>> +---+---+---+---+---+---+
>>   displayDice Toss1=: toss dice
>> +---+---+---+---+---+---+---+---+---+---+
>> |o  |o  |o o|o  |   |o o|   |o  |o o|o  |
>> | o | o |o o| o | o |   | o | o |   | o |
>> |  o|  o|o o|  o|   |o o|   |  o|o o|  o|
>> +---+---+---+---+---+---+---+---+---+---+
>> |o  |   |o  |   |o o|   |o o|o  |o o|o o|
>> |   | o | o | o |   | o |   | o |o o|   |
>> |  o|   |  o|   |o o|   |o o|  o|o o|o o|
>> +---+---+---+---+---+---+---+---+---+---+
>>   sumThrows Toss1
>> 5 4 9 4 5 5 5 6 10 7
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to