I have solved that problem.  This works from 1901 for the rest of my
lifetime.  The 2100 centential committee might as well begin working on the
problem now.  Some of the 6th graders could be the ones who will have to
change all the current stuff, so they better get started early! 

Linda

-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Raul Miller
Sent: Tuesday, September 23, 2014 5:47 AM
To: Programming forum
Subject: Re: [Jprogramming] Weekend Puzzle - Age of Groundhog born 2002 2 2

Or, in J:

isleap=: 3 :'2|+/0=4 100 400|/y'

   isleap 1900 2000 2012 2100
0 1 1 0

(I am mentioning this because I think I included a buggy version of
this expression in an earlier message - I think I left out the 0=
part.)

Thanks,

-- 
Raul


On Mon, Sep 22, 2014 at 10:13 PM, Don Kelly <[email protected]> wrote:
> Fortunately, the use of "leap" is valid as long as one doesn't go back
past
> 1901 or ahead past 2099.
>
> 1900 and 2100 aren't leap years (Fine tuning of the leap year calculation
).
>
> Don Kelly
>
>
>
>
> On 20/09/2014 10:53 PM, robert therriault wrote:
>>
>> Hi Linda,
>>
>> I share your dream and sometimes the statement 'I have a dream' can
change
>> the world. :-)
>>
>> On to the weekend puzzle...
>>
>> The first thing I need to figure out is whether the birthday has happened
>> this year or not. If it has then I can pretty easily get the number of
days
>> since the birthday using todayno, but if it hasn't then I need to find
the
>> number of days since the previous year's birthday.
>>
>> 'yg mg dg' =: gbday =: 2002 2 2  NB. Groundhog's birthday
>> 'ya ma da'=:afterbday =: 2014 9 20      NB. An example of date after the
>> birthday
>> 'yb mb db'=:beforebday =: 2014 1 31      NB. An example of a date before
>> the birthday
>>
>> bdYet=:(0>-/) &: todayno  NB. returns 1 if the current date is in the
same
>> calendar year before the birthday
>>     ya
>> 2014
>>     ya=. ya- afterbday bdYet ({. afterbday),}.gbday NB.use the current
>> year from example and the birthday
>>     ya
>> 2014
>>     yb
>> 2014
>>     yb=. yb- beforebday bdYet ({. beforebday),}.gbday
>>     yb
>> 2013
>>
>> Next thing would be to define a vector that gives the accumulated days in
>> the year if the year were to start on February 1st. The leap year issue
>> means that the first item in the list will be 29 if it is a leap year.
since
>> I have already figured out whether I am counting from the previous year,
I
>> will use the adjusted year to decide if the year that I am counting from
was
>> a leap year. I will just use a simple (and incorrect) version of leap
year.
>>
>> leap=: 0= 4&|
>> feb=: 28 + leap ya
>>     feb
>> 28
>>     [daysFebFirst=: +/\ (feb), 31 30 31 30 31 31 30 31 30 31 31
>> 28 59 89 120 150 181 212 242 273 303 334 365
>>
>> Finally, I create the results.
>>
>>     [yr=:ya-yg NB. number of years
>> 12
>>
>>     [elapsed=: -/ todayno"_1 afterbday,: ya,}.gbday NB. days since the
>> birthday
>> 230
>>     [mr=: +/ elapsed > daysFebFirst NB. number of months
>> 7
>>     [dr=: (<:mr){ elapsed - daysFebFirst
>> 18
>>     yr,mr,dr
>> 12 7 18
>>
>> And for the case of a date before the birthday Jan 31st 2014 we get
>>
>>     [feb=: 28 + leap yb NB. No change since 2013 is not a leap year
>> 28
>>     [yr=:yb-yg NB. number of years
>> 11
>>
>>     [elapsed=: -/ todayno"_1 beforebday ,: yb ,}.gbday NB. days since the
>> previous birthday
>> 363
>>     [mr=: +/ elapsed > daysFebFirst NB. number of months
>> 11
>>     [dr=: (<:mr){ elapsed - daysFebFirst
>> 29
>>     yr,mr,dr
>> 11 11 29
>>
>> Cheers, bob
>>
>> On Sep 20, 2014, at 10:58 AM, Linda Alvord <[email protected]>
>> wrote:
>>
>>> The J forum is my elementary school set of sub imjects.  What you
suggest
>>> is
>>> exactly what I would hope would happen in a J classroom.  All would have
>>> J.
>>> All could experiment and exchange ideas. Hopefully they would have
>>> solutions
>>> they believe were correct.  Then they could explain their thinking to
the
>>> entire class and the teacher.  At this point in the process, the teacher
>>> would not be a leader but a follower.
>>>
>>> Possibly I am dreaming....
>>>
>>> Linda
>>>
>>> -----Original Message-----
>>> From: [email protected]
>>> [mailto:[email protected]] On Behalf Of robert
>>> therriault
>>> Sent: Saturday, September 20, 2014 1:20 PM
>>> To: [email protected]
>>> Subject: Re: [Jprogramming] Weekend Puzzle - Age of Groundhog born 2002
2
>>> 2
>>>
>>> Hi Linda,
>>>
>>> If you are looking for a way to get learners to be interested in the
>>> problem, why not use the very model of learning that we are using here?
>>>
>>> You put a problem out to your class (forum) and see how the responses
go.
>>> You as the teacher (moderator) are free to choose the rules, knowing
that
>>> the students (participants) are able to put their attention elsewhere if
>>> things are not kept interesting. It is a style of learning that we use
on
>>> these forums everyday and it seems to work for us.
>>>
>>> What might not work as well is going into the class and showing them how
>>> to
>>> solve the problem, as this takes away so much from the experience that
we
>>> enjoy when we are learning. The challenge for the teacher is not so much
>>> coming up with a solution, as it is to make sure that they are engaging
>>> as
>>> many students as possible. This is especially true at the extremes of
the
>>> class' abilities - both the really adept and those that are struggling
>>> with
>>> the concepts are where teachers are most valuable.
>>>
>>> Just my two bits, but I would probably just start with the question of
>>> 'how
>>> would you measure time in metric?' and use that as a way to explore all
>>> the
>>> ways that you would count and group the types of time and how they way
we
>>> measure time can be pretty crazy and why it might be good if we could
get
>>> computers to do the work of taking care of the crazy systems that we
have
>>> set up. Where the class would take this in terms of topic is wide open,
>>> as a
>>> teacher you just make sure that as the core concepts arise they are
>>> covered
>>> accurately.
>>>
>>> Cheers, bob
>>>
>>> ps. The quickest way to get me to care about the age of your groundhog
is
>>> to
>>> have one of my classmates start trying to figure it out, but my learning
>>> is
>>> usually socially motivated. :-)
>>>
>>> On Sep 20, 2014, at 9:35 AM, Joe Bogner <[email protected]> wrote:
>>>
>>>> Hi Linda
>>>>
>>>> The solution is quite simple and uses one built verb from an addon. I
>>>> posted it with the solution masked so others can try it on their own
>>>> without accidentally seeing mine
>>>>
>>>> The actual solution is the result of this:
>>>>
>>>> |. solution2
>>>> On Sep 20, 2014 11:54 AM, "Linda Alvord" <[email protected]>
>>>> wrote:
>>>>
>>>>> We are talking children here.
>>>>>
>>>>> Onyadot. emiTetaDot, ffiDst, onyadot, emiTetaDot, emitetad,  sepyt and
>>>>> eriuqer  are all denied!
>>>>>
>>>>> How about using +, -, *, ?, %: and that sort of thing.
>>>>>
>>>>> I must admit you did get  the right answer!
>>>>>
>>>>> You can also get a second chance.
>>>>>
>>>>> Cheers,  Linda
>>>>>
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: [email protected]
>>>>> [mailto:[email protected]] On Behalf Of Joe
>>>
>>> Bogner
>>>>>
>>>>> Sent: Saturday, September 20, 2014 9:10 AM
>>>>> To: [email protected]
>>>>> Subject: Re: [Jprogramming] Weekend Puzzle - Age of Groundhog born
2002
>>>>> 2
>>>
>>> 2
>>>>>
>>>>> solution...
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> 1
>>>>> 2
>>>>> 3
>>>>> 4
>>>>> 5
>>>>>
>>>>>
>>>>> lightly obfuscated for someone who doesn't want the solution
>>>>>
>>>>>
>>>>> solution1=: 0 : 0
>>>>>
>>>>> )2 2 2002 onyadot emiTetaDot( ffiDst )02 9 4102 onyadot emiTetaDot(
>>>>>
>>>>> 'emitetad/sepyt' eriuqer
>>>>>
>>>>> )
>>>>>
>>>>>
>>>>>
>>>>> to run:
>>>>>
>>>>>
>>>>> 0!:1 |. solution1
>>>>>
>>>>>
>>>>>
>>>>> solution2 =: 0 : 0
>>>>>
>>>>> )2 2 2002( ffiDst )02 9 4102(
>>>>>
>>>>> 'emitetad/sepyt' eriuqer
>>>>>
>>>>> )
>>>>>
>>>>>
>>>>> 0!:1 |. solution2
>>>>>
>>>>>
>>>>>
>>>>> note: both take advantage of a addon. solution1 uses todayno just
>>>>> because
>>>>> it was stated in the problem but solution2 is what I'd really use
>>>>>
>>>>>
>>>>>
>>>>> On Sat, Sep 20, 2014 at 4:54 AM, Linda Alvord
<[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Using the verb  todayno  which provides the number of days since the
>>>>>> beginning of 1800,  write what you need to find the age today of a
>>>>>> groundhog
>>>>>> born on 2002 2 2.
>>>>>>
>>>>>>
>>>>>>
>>>>>>   todayno 2014 9 2014
>>>>>>
>>>>>> 80418
>>>>>>
>>>>>>
>>>>>>
>>>>>>   2014 9 20 age 2002 2 2
>>>>>>
>>>>>> 12 7 18
>>>>>>
>>>>>>
>>>>>>
>>>>>> His age is 12 years, 7 months and 18 days.  Use simple J.  Check that
>>>>>
>>>>> your
>>>>>>
>>>>>> solution provides a correct answer for you birthday.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Have a pleasant weekend.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Linda
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
----------------------------------------------------------------------
>>>>>> 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
>>>
>>> ----------------------------------------------------------------------
>>> 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