Palindrome Date Detector

vCalc Reviewed
Equation / Last modified by KurtHeckman on 2015/05/22 18:50
`"Palindrome Date" = `
Rating
ID
vCalc.Palindrome Date Detector
UUID
bb50c1fc-ea9e-11e4-a3bb-bc764e2038f2

This equation finds the Palindrome Dates that fall between two input dates.

Palindromes catch our attention, as do graphical images with visual reflections.  The mind is excited by things that can remain unchanged when you flip them. It is a long time trick to present a verbal palindrome in a mirror to see that it reads exactly the same in the reflection or not.

Contents

Definition

A palindrome is a character string which reads the same backward or forward.  Forms of palindromes include words, numbers, phrases (which can include whitespace), or simply sequence of characters.

For example: AaMGMaA and aaammaaa are two palindromes of character sequences.  More complex palindromes can be devised from real words or phrases, such as:

     "Rise to vote, sir" and
     "A man, a plan, a canal, Panama" which was a clever palindrome used when Ted Roosevelt advocated the construction of the Panama Canal.

Names that can be read the same in a mirror also capture attention when it is realized they are palindromes:

     Ada, Anna, Bob, Aviva, Harrah, Eve, Hannah, Maham, or  Otto

A palindrome date, as defined in this equation, is an eight digit date representation of the common form used frequently in the US ( MMddyyyy ), which also conforms to the definition of a palindrome.  
     For example: 10011001,   01011010,   11011011 are three palindrome dates.

Usage

It is not clear there are any practical uses for this particular palindrome equation but there may be some obscure application1 of these symmetric numbers and this algorithm allows you to find sets of them.

For the less knowledgeable coder or the non-programmer, this equation is a good reference for a number of simple-to-create but powerful code structures.  I challenge anyone who is a new acquaintance of vCalc to duplicate this equation (which takes a single mouse-click) and modify it to have it do something new.  Send me information on your creations at:
michael.bartmess@vcalc.com

This palindrome date generation is constrained by the year having a four digit representation and the month and day also being two digits each in this date format. This translates to this equation being limited to a four digit year and thus the latest date that can be entered is December 31, 9999.  We also do not allow leading zeroes in years in this format, so the earliest date that can be entered is Jan 1, 1000.

Results

Interestingly this is a very sparse set of palindromes.  When looking at the entire allowable range of input dates, almost 8,999 years (01/01/1000 to 12/31/9999), you find only the following valid palindrome dates:

Palindrome Dates:   10011001,   01011010,   11011011,   02011020,   12011021,   03011030,   04011040,   05011050,   06011060,   07011070,   08011080,   09011090,   10111101,   01111110,   11111111,   02111120,   12111121,   03111130,   04111140,   05111150,   06111160,   07111170,   08111180,   09111190,   10211201,   01211210,   11211211,   02211220,   12211221,   03211230,   04211240,   05211250,   06211260,   07211270,   08211280,   09211290,   10311301,   01311310,   12311321,   03311330,   05311350,   07311370,   08311380, 10022001,   01022010,   11022011,   02022020,   12022021,   03022030,   04022040,   05022050,   06022060,   07022070,   08022080,   09022090,   10122101,   01122110,   11122111,   02122120,   12122121,   03122130,   04122140,   05122150,   06122160,   07122170,   08122180,   09122190,   10222201,   01222210,   11222211,   02222220,   12222221,   03222230,   04222240,   05222250,   06222260,   07222270,   08222280,   09222290,   10033001,   01033010,   11033011,   02033020,   12033021,   03033030,   04033040,   05033050,   06033060,   07033070,   08033080,   09033090,   10133101,   01133110,   11133111,   02133120,   12133121,   03133130,   04133140,   05133150,   06133160,   07133170,   08133180,   09133190,   10233201,   01233210,   11233211,   02233220,   12233221,   03233230,   04233240,   05233250,   06233260,   07233270,   08233280,   09233290,  10044001,   01044010,   11044011,   02044020,   12044021,   03044030,   04044040,   05044050,   06044060,   07044070,   08044080,   09044090,   10144101,   01144110,   11144111,   02144120,   12144121,   03144130,   04144140,   05144150,   06144160,   07144170,   08144180,   09144190,   10244201,   01244210,   11244211,   02244220,   12244221,   03244230,   04244240,   05244250,   06244260,   07244270,   08244280,   09244290,   10055001,   01055010,   11055011,   02055020,   12055021,   03055030,   04055040,   05055050,   06055060,   07055070,   08055080,   09055090,   10155101,   01155110,   11155111,   02155120,   12155121,   03155130,   04155140,   05155150,   06155160,   07155170,   08155180,   09155190,   10255201,   01255210,   11255211,   02255220,   12255221,   03255230,   04255240,   05255250,   06255260,   07255270,   08255280,   09255290, 10066001,   01066010,   11066011,   02066020,   12066021,   03066030,   04066040,   05066050,   06066060,   07066070,   08066080,   09066090,   10166101,   01166110,   11166111,   02166120,   12166121,   03166130,   04166140,   05166150,   06166160,   07166170,   08166180,   09166190,   10266201,   01266210,   11266211,   02266220,   12266221,   03266230,   04266240,   05266250,   06266260,   07266270,   08266280,   09266290,   10077001,   01077010,   11077011,   02077020,   12077021,   03077030,   04077040,   05077050,   06077060,   07077070,   08077080,   09077090,   10177101,   01177110,   11177111,   02177120,   12177121,   03177130,   04177140,   05177150,   06177160,   07177170,   08177180,   09177190,   10277201,   01277210,   11277211,   02277220,   12277221,   03277230,   04277240,   05277250,   06277260,   07277270,   08277280,   09277290,  10088001,   01088010,   11088011,   02088020,   12088021,   03088030,   04088040,   05088050,   06088060,   07088070,   08088080,   09088090,   10188101,   01188110,   11188111,   02188120,   12188121,   03188130,   04188140,   05188150,   06188160,   07188170,   08188180,   09188190,   10288201,   01288210,   11288211,   02288220,   12288221,   03288230,   04288240,   05288250,   06288260,   07288270,   08288280,   09288290,   10099001,   01099010,   11099011,   02099020,   12099021,   03099030,   04099040,   05099050,   06099060,   07099070,   08099080,   09099090,   10199101,   01199110,   11199111,   02199120,   12199121,   03199130,   04199140,   05199150,   06199160,   07199170,   08199180,   09199190,   10299201,   01299210,   11299211,   12299221,   03299230,   04299240,   05299250,   06299260,   07299270,   08299280,   09299290

You do not have permission to execute macro putFootnotes

References