I now have a tacit tosskm however it only produces 10 tosses.  Try the 
following:

NB. Linda's Turkey Roll - Challenge 2

one =:   '   ',' o ',:'   '
two =:   'o  ','   ',:'  o'
three =: 'o  ',' o ',:'  o'
four =:  'o o','   ',:'o o'
five =:  'o o',' o ',:'o o'
six =:   'o o','o o',:'o o'

]dice =: one;two;three;four;five;six


tosskm =: dice {~ [: <: (ckm =: >: ? 2 10 $ 6)"_
tosskm''
ckm
tosskm''
ckm

In place of the argument '' you may use any other argument.

Kip

On 12/3/2011 4:09 PM, Kip Murray wrote:
> Try the following:
>
> one =: ' ',' o ',:' '
> two =: 'o ',' ',:' o'
> three =: 'o ',' o ',:' o'
> four =: 'o o',' ',:'o o'
> five =: 'o o',' o ',:'o o'
> six =: 'o o','o o',:'o o'
>
> ]dice =: one;two;three;four;five;six
>
> tosskm =: 3 : 'dice {~ <: ckm =: >: ? 6 $~ 2 , y'
> tosskm 10
> ckm
> tosskm 10
> ckm
>
> I think there is an error in your verb sla which should have (2,y) $ 6
> not 2 10 $ y . Then tossla 6 would result in 6 tosses, tossla 10 ten
> tosses.
>
> Kip
>
> On 12/3/2011 10:29 AM, Linda Alvord wrote:
>> You knew that it was important to capture the actual "dice"(almost).
>> However, even without defining a function you do not get new tosses.
>>
>> If you can, please rearrange your definitions to match my arguments
>> and results:
>>
>> sla=: 13 :'cla=:1+? 2 10$y'
>> tossla=: 13 :'(<"2)3 3$"1(<:sla y){d'
>> tossla 6
>> cla
>> tossla 6
>> cla
>>
>> tenkm =: [: ? (2 10 $ 6)"_
>> tosskm =: tenkm''
>> tosskm{dice
>> tosskm
>> tosskm{dice
>> tosskm
>>
>> This is fun!
>>
>> Linda
>>
>> -----Original Message-----
>> From: programming-boun...@jsoftware.com
>> [mailto:programming-boun...@jsoftware.com] On Behalf Of Kip Murray
>> Sent: Thursday, December 01, 2011 9:46 AM
>> To: Programming forum
>> Subject: Re: [Jprogramming] Turkey Roll - Challenge 2 Rich Text
>>
>> Not precisely what you asked for, Linda, but equivalent:
>>
>> one =: ' ',' o ',:' '
>> two =: 'o ',' ',:' o'
>> three =: 'o ',' o ',:' o'
>> four =: 'o o',' ',:'o o'
>> five =: 'o o',' o ',:'o o'
>> six =: 'o o','o o',:'o o'
>>
>> ]dice =: one;two;three;four;five;six
>> +---+---+---+---+---+---+
>> | |o |o |o o|o o|o o|
>> | o | | o | | o |o o|
>> | | o| o|o o|o o|o o|
>> +---+---+---+---+---+---+
>>
>> ten =: [: ? (2 10 $ 6)"_ NB. ten tosses of two dice
>>
>> ]toss =: ten''
>> 5 4 5 2 4 3 0 2 4 2
>> 2 1 4 4 3 2 0 3 3 3
>>
>> 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 | o | | | |
>> | o| o|o o|o o|o o| o| |o o|o o|o o|
>> +---+---+---+---+---+---+---+---+---+---+
>>
>> ]sums =: 2 + +/ toss
>> 9 7 11 8 9 7 2 7 9 7
>>
>> fd =: [: /:~ ~. ,. [: +/"1 ~. =/ ]
>>
>> fd sums
>> 2 1
>> 7 4
>> 8 1
>> 9 3
>> 11 1
>>
>> 4!:0 'dice';'toss';'sums';'fd'
>> 0 0 0 3
>>
>>
>> On 11/26/2011 3:14 AM, Linda Alvord wrote:
>>> Version 3 Rich Text
>>>
>>> Version 2 Plain text. How can I make the graphic symbols look good?
>>>
>>> PLEASE DO NOT REPLY BEFORE December I, 2011 at 12:00 am EST !
>>>
>>> The turkey roll challenge, named in honor of the Thanksgiving Day
>>> holiday, focuses on the verb roll or ? with one argument.
>>>
>>> Create two nouns and a verb that will generate the following results.
>>>
>>> dice
>>> ----T---T---T---T---T---┐
>>> │ │o │o │o o│o o│o o│
>>> │ o │ │ o │ │ o │o o│
>>> │ │ o│ o│o o│o o│o o│
>>> L---+---+---+---+---+----
>>>
>>> toss
>>> ----T-T---T-T---T-T---T-T---T-T---T-T---T-T---T-T---T-T---┐
>>> │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│ │ │
>>> L---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+----
>>> toss
>>> ----T-T---T-T---T-T---T-T---T-T---T-T---T-T---T-T---T-T---┐
>>> │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│ │ │
>>> L---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+---+-+----
>>>
>>> c=:3 8 7 12 9 8 9 7 4 12 NB. The list c is the sums of the
>>> NB. second toss of ten dice
>>> fd c
>>> 3 1 NB. A frequency distribution of the
>>> 4 1 NB. ten tosses
>>> 7 2
>>> 8 2
>>> 9 2
>>> 12 2
>>>
>>> 4!:0 'dice';'toss';'c';'fd'
>>> 0 0 0 3 NB. 0 for nouns, 3 for verbs
>>>
>>>
>>> Some rules and hints:
>>>
>>> Write all verbs and nouns without @ . You can use several nouns and
>>> verbs to make a final noun or verb. Here are some things about roll.
>>>
>>> r=: 13 :'?y'
>>> r
>>> ?
>>> r 4
>>> 3
>>> r 4
>>> 2
>>> s=: 13 :'r 3 4$y'
>>> s
>>> [: r 3 4 $ ]
>>> s 5
>>> 3 3 3 2
>>> 3 2 3 4
>>> 2 4 0 4
>>> s 5
>>> 1 3 1 0
>>> 3 1 4 1
>>> 4 2 1 3
>>> t=: 13 :'(r s y)*3 4$100*i.4'
>>> 5 t 5
>>> 1003 1000.69 1000.5 1001.49
>>> 1001 1000.55 1000 1001
>>> 1000.89 1001.03 1002 1000
>>> 5 t 5
>>> 1001 1002 1000 1001.37
>>> 1003 1000.04 1000.23 1002
>>> 1000.01 1001 1000.3 1001.16
>>>
>>> Be sure to get unique results as you go. Notice how to build a complex
>>> result with several shorter functions.
>>>
>>> Linda
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to