-----Original Message----- From: Linda Alvord [mailto:lindaalv...@verizon.net] Sent: Sunday, December 11, 2011 10:27 AM To: 'Linda Alvord' Subject: RE: Turkey Roll - Challenge 2
Time to wrap up the turkey roll. Lots to think about. Here's a summary of much of it. I was struck by Don Guinn's comment: "Why is it that we have all kinds of courses teaching how to write programs but none for reading?" So here is long story without the results cut out. Another e-mail will follow this one that you can copy and paste in a file and then experiment further. Feel free to continue to ask questions or simplify these ideas. I'm almost finished with Challenge 3 and wills post it soon. d=:7#"1 ,.2#4 6 8 12 20 NB. Create array d 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 8 8 8 8 8 8 8 8 8 8 8 8 8 8 12 12 12 12 12 12 12 12 12 12 12 12 12 12 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r=: 13 :'1+?y' r 1 + ? r d 3 4 3 2 3 1 4 2 4 2 3 3 1 2 2 5 5 5 5 1 4 5 2 6 5 3 2 1 6 6 8 5 8 1 8 4 8 6 5 2 1 5 4 3 6 4 2 4 12 11 6 10 9 3 6 3 1 8 10 9 12 2 8 3 4 6 16 1 4 8 r d 2 3 4 1 2 4 1 2 4 1 2 1 1 3 4 3 6 5 4 2 6 1 2 6 4 6 6 2 2 7 2 3 8 3 1 2 1 3 1 1 1 8 5 5 4 3 1 4 4 10 8 7 9 6 8 1 8 1 15 7 3 8 7 2 18 8 12 14 18 18 4!:0 ;:'d r' 0 3 toss=: 13 :'+/1+?y' toss [: +/ 1 + ? toss d 56 67 39 62 67 63 59 c=:toss d c 0 32 56 48 51 45 60 NB.fdkm =: [: /:~ ~. ,. [: +/"1 ~. =/ ] NB.fdkm c NB.fdla=: 13 :'/:~(~.y),.+/"1 (~.y)=/y' NB.fdla c NB.fdkm NB.fdla fd=:[: /:~ ~. ,. [: +/"1 ~. =/ ] fd [: /:~ ~. ,. [: +/"1 ~. =/ ] fd c=:toss d 29 1 37 1 48 1 52 1 56 1 58 1 62 1 c 56 48 37 52 58 62 29 fd c=:toss d 45 1 48 1 55 1 59 1 61 1 63 1 69 1 c 55 59 63 69 61 48 45 purr=:13 :'(0{"1 y) ,.100*(1{"1 y)%+/1{"1 y' purr (0 {"1 ]) ,. 100 * (1 {"1 ]) % [: +/ 1 {"1 ] purr c 55 100 purr fd toss d 35 14.2857 40 28.5714 44 28.5714 45 14.2857 49 14.2857 cc=:4 2$7 1 9 2 10 1 11 3 cc 7 1 9 2 10 1 11 3 purr cc 7 14.2857 9 28.5714 10 14.2857 11 42.8571 assert 100=+/1{"1 purr cc d=:500000#"1 ,.2#4 6 8 12 20 fd toss d 17 1 18 6 19 12 20 18 21 36 22 46 23 85 24 131 25 205 26 280 27 448 28 621 29 792 30 1065 31 1409 32 1719 33 2186 34 2744 35 3213 36 3932 37 4697 38 5449 39 6490 40 7141 41 8184 42 9199 43 10073 44 11069 45 12296 46 13226 47 14485 48 15216 49 16156 50 16526 51 17457 52 17610 53 18036 54 18279 55 18309 56 18339 57 17948 58 17943 59 17195 60 16743 61 16060 62 15126 63 14310 64 13349 65 12090 66 11344 67 10235 68 9316 69 8574 70 7333 71 6452 72 5468 73 4681 74 3974 75 3274 76 2610 77 2125 78 1709 79 1346 80 1046 81 748 82 557 83 417 84 294 85 182 86 148 87 85 88 71 89 34 90 17 91 2 92 5 93 1 94 1 95 1 ]cc=:fd toss d 16 2 17 1 18 8 19 9 20 21 21 35 22 63 23 95 24 127 25 216 26 311 27 425 28 584 29 782 30 1086 31 1386 32 1779 33 2183 34 2687 35 3324 36 3868 37 4724 38 5379 39 6450 40 7369 41 8094 42 9254 43 10243 44 11167 45 12272 46 13279 47 14223 48 14823 49 15821 50 16745 51 17310 52 17843 53 18205 54 18135 55 18532 56 18327 57 18196 58 17897 59 17257 60 16857 61 15731 62 15221 63 14352 64 13261 65 12251 66 11295 67 10223 68 9345 69 8147 70 7247 71 6352 72 5411 73 4713 74 4005 75 3357 76 2723 77 2176 78 1736 79 1346 80 1066 81 784 82 634 83 396 84 308 85 196 86 141 87 79 88 51 89 27 90 17 91 8 92 3 93 2 94 1 95 1 purr cc 16 0.0004 17 0.0002 18 0.0016 19 0.0018 20 0.0042 21 0.007 22 0.0126 23 0.019 24 0.0254 25 0.0432 26 0.0622 27 0.085 28 0.1168 29 0.1564 30 0.2172 31 0.2772 32 0.3558 33 0.4366 34 0.5374 35 0.6648 36 0.7736 37 0.9448 38 1.0758 39 1.29 40 1.4738 41 1.6188 42 1.8508 43 2.0486 44 2.2334 45 2.4544 46 2.6558 47 2.8446 48 2.9646 49 3.1642 50 3.349 51 3.462 52 3.5686 53 3.641 54 3.627 55 3.7064 56 3.6654 57 3.6392 58 3.5794 59 3.4514 60 3.3714 61 3.1462 62 3.0442 63 2.8704 64 2.6522 65 2.4502 66 2.259 67 2.0446 68 1.869 69 1.6294 70 1.4494 71 1.2704 72 1.0822 73 0.9426 74 0.801 75 0.6714 76 0.5446 77 0.4352 78 0.3472 79 0.2692 80 0.2132 81 0.1568 82 0.1268 83 0.0792 84 0.0616 85 0.0392 86 0.0282 87 0.0158 88 0.0102 89 0.0054 90 0.0034 91 0.0016 92 0.0006 93 0.0004 94 0.0002 95 0.0002 assert 100=+/1{"1 purr fd toss d assert 100=+/1{"1 purr cc 4!:0 ;:'c cc d r toss fd purr' 0 0 0 3 3 3 3 Happy Thanksgiving. Linda -----Original Message----- From: Linda Alvord [mailto:lindaalv...@verizon.net] Sent: Saturday, November 26, 2011 3:14 AM To: 'Linda Alvord' Subject: Turkey Roll - Challenge 2 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 │ │ │ │ │ │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 │ │ │ │ │ │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 second toss of NB. ten dice fd c 3 1 NB. A frequency distribution of the ten tosses 4 1 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