Today is the CenterDay of the week of the next Feb 29thConvert calendar dates to week dates and vice versaWhat date is that again?ValiDate ISO 8601 by RXCreate a Winter Bash 2015 hat reminderHow many weeks?Beat Pure Regular Expressions at Validating ISO 8601 DatesToday in the YOLDASCII Calendar PlannerGet the date of the nth day of week in a given year and month

Increase size of symbol intercal when in superscript position

Why doesn't H₄O²⁺ exist?

90's TV series where a boy goes to another dimension through portal near power lines

UK: Is there precedent for the governments e-petition site changing the direction of a government decision?

Brothers & sisters

Do I have a twin with permutated remainders?

Is it canonical bit space?

In a Spin are Both Wings Stalled?

What mechanic is there to disable a threat instead of killing it?

Were any external disk drives stacked vertically?

How can I prevent hyper evolved versions of regular creatures from wiping out their cousins?

Facing a paradox: Earnshaw's theorem in one dimension

Python: return float 1.0 as int 1 but float 1.5 as float 1.5

How much of data wrangling is a data scientist's job?

In Romance of the Three Kingdoms why do people still use bamboo sticks when papers are already invented?

Why does Arabsat 6A need a Falcon Heavy to launch

Why does the EU insist on the backstop when it is clear in a no deal scenario they still intend to keep an open border?

How do I write bicross product symbols in latex?

What's the difference between 'rename' and 'mv'?

How can I tell someone that I want to be his or her friend?

How do conventional missiles fly?

Can I use a neutral wire from another outlet to repair a broken neutral?

Why can't we play rap on piano?

What to put in ESTA if staying in US for a few days before going on to Canada



Today is the Center


Day of the week of the next Feb 29thConvert calendar dates to week dates and vice versaWhat date is that again?ValiDate ISO 8601 by RXCreate a Winter Bash 2015 hat reminderHow many weeks?Beat Pure Regular Expressions at Validating ISO 8601 DatesToday in the YOLDASCII Calendar PlannerGet the date of the nth day of week in a given year and month













8












$begingroup$


Given a date as input in any convenient format, output a calendar with that date as the exact center of a five-week window. The header of the calendar must include the two-letter abbreviations for the days of the week (i.e., Su Mo Tu We Th Fr Sa).



For example, given April 2 2019 as input, the output should be



Sa Su Mo Tu We Th Fr
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19


so that the given date is the exact middle of the calendar.



Given February 19 2020, output



Su Mo Tu We Th Fr Sa
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
1 2 3 4 5 6 7


For September 14 1752, show the following:



Mo Tu We Th Fr Sa Su
28 29 30 31 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 1



  • Input and output can be given by any convenient method.

  • The input is guaranteed non-empty and valid (i.e., you'll never receive "" or Feb 31 etc.).

  • Assume Gregorian calendar for all dates.

  • Leap years must be accounted for.

  • Input dates will range from Jan 1 1600 to Dec 31 2500.

  • You can print it to STDOUT or return it as a function result.

  • Either a full program or a function are acceptable.

  • Any amount of extraneous whitespace is acceptable, so long as the characters line up appropriately.


  • Standard loopholes are forbidden.

  • This is code-golf so all usual golfing rules apply, and the shortest code (in bytes) wins.









share|improve this question









$endgroup$
















    8












    $begingroup$


    Given a date as input in any convenient format, output a calendar with that date as the exact center of a five-week window. The header of the calendar must include the two-letter abbreviations for the days of the week (i.e., Su Mo Tu We Th Fr Sa).



    For example, given April 2 2019 as input, the output should be



    Sa Su Mo Tu We Th Fr
    16 17 18 19 20 21 22
    23 24 25 26 27 28 29
    30 31 1 2 3 4 5
    6 7 8 9 10 11 12
    13 14 15 16 17 18 19


    so that the given date is the exact middle of the calendar.



    Given February 19 2020, output



    Su Mo Tu We Th Fr Sa
    2 3 4 5 6 7 8
    9 10 11 12 13 14 15
    16 17 18 19 20 21 22
    23 24 25 26 27 28 29
    1 2 3 4 5 6 7


    For September 14 1752, show the following:



    Mo Tu We Th Fr Sa Su
    28 29 30 31 1 2 3
    4 5 6 7 8 9 10
    11 12 13 14 15 16 17
    18 19 20 21 22 23 24
    25 26 27 28 29 30 1



    • Input and output can be given by any convenient method.

    • The input is guaranteed non-empty and valid (i.e., you'll never receive "" or Feb 31 etc.).

    • Assume Gregorian calendar for all dates.

    • Leap years must be accounted for.

    • Input dates will range from Jan 1 1600 to Dec 31 2500.

    • You can print it to STDOUT or return it as a function result.

    • Either a full program or a function are acceptable.

    • Any amount of extraneous whitespace is acceptable, so long as the characters line up appropriately.


    • Standard loopholes are forbidden.

    • This is code-golf so all usual golfing rules apply, and the shortest code (in bytes) wins.









    share|improve this question









    $endgroup$














      8












      8








      8


      1



      $begingroup$


      Given a date as input in any convenient format, output a calendar with that date as the exact center of a five-week window. The header of the calendar must include the two-letter abbreviations for the days of the week (i.e., Su Mo Tu We Th Fr Sa).



      For example, given April 2 2019 as input, the output should be



      Sa Su Mo Tu We Th Fr
      16 17 18 19 20 21 22
      23 24 25 26 27 28 29
      30 31 1 2 3 4 5
      6 7 8 9 10 11 12
      13 14 15 16 17 18 19


      so that the given date is the exact middle of the calendar.



      Given February 19 2020, output



      Su Mo Tu We Th Fr Sa
      2 3 4 5 6 7 8
      9 10 11 12 13 14 15
      16 17 18 19 20 21 22
      23 24 25 26 27 28 29
      1 2 3 4 5 6 7


      For September 14 1752, show the following:



      Mo Tu We Th Fr Sa Su
      28 29 30 31 1 2 3
      4 5 6 7 8 9 10
      11 12 13 14 15 16 17
      18 19 20 21 22 23 24
      25 26 27 28 29 30 1



      • Input and output can be given by any convenient method.

      • The input is guaranteed non-empty and valid (i.e., you'll never receive "" or Feb 31 etc.).

      • Assume Gregorian calendar for all dates.

      • Leap years must be accounted for.

      • Input dates will range from Jan 1 1600 to Dec 31 2500.

      • You can print it to STDOUT or return it as a function result.

      • Either a full program or a function are acceptable.

      • Any amount of extraneous whitespace is acceptable, so long as the characters line up appropriately.


      • Standard loopholes are forbidden.

      • This is code-golf so all usual golfing rules apply, and the shortest code (in bytes) wins.









      share|improve this question









      $endgroup$




      Given a date as input in any convenient format, output a calendar with that date as the exact center of a five-week window. The header of the calendar must include the two-letter abbreviations for the days of the week (i.e., Su Mo Tu We Th Fr Sa).



      For example, given April 2 2019 as input, the output should be



      Sa Su Mo Tu We Th Fr
      16 17 18 19 20 21 22
      23 24 25 26 27 28 29
      30 31 1 2 3 4 5
      6 7 8 9 10 11 12
      13 14 15 16 17 18 19


      so that the given date is the exact middle of the calendar.



      Given February 19 2020, output



      Su Mo Tu We Th Fr Sa
      2 3 4 5 6 7 8
      9 10 11 12 13 14 15
      16 17 18 19 20 21 22
      23 24 25 26 27 28 29
      1 2 3 4 5 6 7


      For September 14 1752, show the following:



      Mo Tu We Th Fr Sa Su
      28 29 30 31 1 2 3
      4 5 6 7 8 9 10
      11 12 13 14 15 16 17
      18 19 20 21 22 23 24
      25 26 27 28 29 30 1



      • Input and output can be given by any convenient method.

      • The input is guaranteed non-empty and valid (i.e., you'll never receive "" or Feb 31 etc.).

      • Assume Gregorian calendar for all dates.

      • Leap years must be accounted for.

      • Input dates will range from Jan 1 1600 to Dec 31 2500.

      • You can print it to STDOUT or return it as a function result.

      • Either a full program or a function are acceptable.

      • Any amount of extraneous whitespace is acceptable, so long as the characters line up appropriately.


      • Standard loopholes are forbidden.

      • This is code-golf so all usual golfing rules apply, and the shortest code (in bytes) wins.






      code-golf ascii-art date






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 3 hours ago









      AdmBorkBorkAdmBorkBork

      27.7k466237




      27.7k466237




















          5 Answers
          5






          active

          oldest

          votes


















          1












          $begingroup$


          Wolfram Language (Mathematica), 131 bytes



          (s=#;Grid@Join[StringTake[#,2]&/@ToString/@(DayName[d[s,#]]&/@Range[-3,3]),Partition[Last@d[s,#]&/@Range[-17,17],7]])&
          d=DatePlus


          Try it online!



          I don't know why Grid doesn't work on TIO but this code outputs this



          enter image description here






          share|improve this answer









          $endgroup$












          • $begingroup$
            DayName[s~d~#]
            $endgroup$
            – DavidC
            6 mins ago


















          0












          $begingroup$


          C# (Visual C# Interactive Compiler), 124 bytes





          n=>for(int i=-24;i<18;)Write($"(i<-17?$"n.AddDays(i):ddd".Remove(2,1):n.AddDays(i).Day+""),3"+((46+i++)%7<1?"n":""));


          Try it online!






          share|improve this answer









          $endgroup$




















            0












            $begingroup$


            PHP, 197 191 bytes



            $d=date_create($argn)->sub($i=new DateInterval(P17D));$i->d=1;while($x++<35)if($x<8)$h.=substr($d->format(D),0,2).' ';$o.=sprintf('% 2s ',$d->format(j));$d->add($i);echo wordwrap($h.$o,20);


            Certainly longer than I'd like, but having the require date range outside of an epoch timestamp makes PHP longer.



            Try it online!



            Input is STDIN, run with php -nF.



            $ echo April 2 2019|php -nF cal.php



            April 2 2019



            Sa Su Mo Tu We Th Fr 
            16 17 18 19 20 21 22
            23 24 25 26 27 28 29
            30 31 1 2 3 4 5
            6 7 8 9 10 11 12
            13 14 15 16 17 18 19


            February 19 2020



            Su Mo Tu We Th Fr Sa 
            2 3 4 5 6 7 8
            9 10 11 12 13 14 15
            16 17 18 19 20 21 22
            23 24 25 26 27 28 29
            1 2 3 4 5 6 7


            September 14 1752



            Mo Tu We Th Fr Sa Su 
            28 29 30 31 1 2 3
            4 5 6 7 8 9 10
            11 12 13 14 15 16 17
            18 19 20 21 22 23 24
            25 26 27 28 29 30 1





            share|improve this answer











            $endgroup$




















              0












              $begingroup$


              JavaScript (Node.js), 205 bytes








              f=
              d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
              `

              <input type=date oninput=o.textContent=f(this.value)><pre id=o>





              Try it online! Takes input as a string in YYYY-MM-DD format, but the input field in the snippet displays your local date format.






              share|improve this answer









              $endgroup$












              • $begingroup$
                padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                $endgroup$
                – Embodiment of Ignorance
                10 mins ago



















              0












              $begingroup$


              R, 66 bytes





              function(d,g=format)write(c(g(d+-3:3,"%a"),g(d+-17:17,"%3d")),1,7)


              Try it online!



              Pads date numbers with leading 0s; takes input as a Date, which can be created by using as.Date("YYYY/MM/DD").



              Weirdly short for an R ascii-art answer...





              share









              $endgroup$













                Your Answer





                StackExchange.ifUsing("editor", function ()
                return StackExchange.using("mathjaxEditing", function ()
                StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
                StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
                );
                );
                , "mathjax-editing");

                StackExchange.ifUsing("editor", function ()
                StackExchange.using("externalEditor", function ()
                StackExchange.using("snippets", function ()
                StackExchange.snippets.init();
                );
                );
                , "code-snippets");

                StackExchange.ready(function()
                var channelOptions =
                tags: "".split(" "),
                id: "200"
                ;
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function()
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled)
                StackExchange.using("snippets", function()
                createEditor();
                );

                else
                createEditor();

                );

                function createEditor()
                StackExchange.prepareEditor(
                heartbeatType: 'answer',
                autoActivateHeartbeat: false,
                convertImagesToLinks: false,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: null,
                bindNavPrevention: true,
                postfix: "",
                imageUploader:
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                ,
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                );



                );













                draft saved

                draft discarded


















                StackExchange.ready(
                function ()
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f182681%2ftoday-is-the-center%23new-answer', 'question_page');

                );

                Post as a guest















                Required, but never shown

























                5 Answers
                5






                active

                oldest

                votes








                5 Answers
                5






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                1












                $begingroup$


                Wolfram Language (Mathematica), 131 bytes



                (s=#;Grid@Join[StringTake[#,2]&/@ToString/@(DayName[d[s,#]]&/@Range[-3,3]),Partition[Last@d[s,#]&/@Range[-17,17],7]])&
                d=DatePlus


                Try it online!



                I don't know why Grid doesn't work on TIO but this code outputs this



                enter image description here






                share|improve this answer









                $endgroup$












                • $begingroup$
                  DayName[s~d~#]
                  $endgroup$
                  – DavidC
                  6 mins ago















                1












                $begingroup$


                Wolfram Language (Mathematica), 131 bytes



                (s=#;Grid@Join[StringTake[#,2]&/@ToString/@(DayName[d[s,#]]&/@Range[-3,3]),Partition[Last@d[s,#]&/@Range[-17,17],7]])&
                d=DatePlus


                Try it online!



                I don't know why Grid doesn't work on TIO but this code outputs this



                enter image description here






                share|improve this answer









                $endgroup$












                • $begingroup$
                  DayName[s~d~#]
                  $endgroup$
                  – DavidC
                  6 mins ago













                1












                1








                1





                $begingroup$


                Wolfram Language (Mathematica), 131 bytes



                (s=#;Grid@Join[StringTake[#,2]&/@ToString/@(DayName[d[s,#]]&/@Range[-3,3]),Partition[Last@d[s,#]&/@Range[-17,17],7]])&
                d=DatePlus


                Try it online!



                I don't know why Grid doesn't work on TIO but this code outputs this



                enter image description here






                share|improve this answer









                $endgroup$




                Wolfram Language (Mathematica), 131 bytes



                (s=#;Grid@Join[StringTake[#,2]&/@ToString/@(DayName[d[s,#]]&/@Range[-3,3]),Partition[Last@d[s,#]&/@Range[-17,17],7]])&
                d=DatePlus


                Try it online!



                I don't know why Grid doesn't work on TIO but this code outputs this



                enter image description here







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered 2 hours ago









                J42161217J42161217

                13.8k21253




                13.8k21253











                • $begingroup$
                  DayName[s~d~#]
                  $endgroup$
                  – DavidC
                  6 mins ago
















                • $begingroup$
                  DayName[s~d~#]
                  $endgroup$
                  – DavidC
                  6 mins ago















                $begingroup$
                DayName[s~d~#]
                $endgroup$
                – DavidC
                6 mins ago




                $begingroup$
                DayName[s~d~#]
                $endgroup$
                – DavidC
                6 mins ago











                0












                $begingroup$


                C# (Visual C# Interactive Compiler), 124 bytes





                n=>for(int i=-24;i<18;)Write($"(i<-17?$"n.AddDays(i):ddd".Remove(2,1):n.AddDays(i).Day+""),3"+((46+i++)%7<1?"n":""));


                Try it online!






                share|improve this answer









                $endgroup$

















                  0












                  $begingroup$


                  C# (Visual C# Interactive Compiler), 124 bytes





                  n=>for(int i=-24;i<18;)Write($"(i<-17?$"n.AddDays(i):ddd".Remove(2,1):n.AddDays(i).Day+""),3"+((46+i++)%7<1?"n":""));


                  Try it online!






                  share|improve this answer









                  $endgroup$















                    0












                    0








                    0





                    $begingroup$


                    C# (Visual C# Interactive Compiler), 124 bytes





                    n=>for(int i=-24;i<18;)Write($"(i<-17?$"n.AddDays(i):ddd".Remove(2,1):n.AddDays(i).Day+""),3"+((46+i++)%7<1?"n":""));


                    Try it online!






                    share|improve this answer









                    $endgroup$




                    C# (Visual C# Interactive Compiler), 124 bytes





                    n=>for(int i=-24;i<18;)Write($"(i<-17?$"n.AddDays(i):ddd".Remove(2,1):n.AddDays(i).Day+""),3"+((46+i++)%7<1?"n":""));


                    Try it online!







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered 1 hour ago









                    Embodiment of IgnoranceEmbodiment of Ignorance

                    2,718126




                    2,718126





















                        0












                        $begingroup$


                        PHP, 197 191 bytes



                        $d=date_create($argn)->sub($i=new DateInterval(P17D));$i->d=1;while($x++<35)if($x<8)$h.=substr($d->format(D),0,2).' ';$o.=sprintf('% 2s ',$d->format(j));$d->add($i);echo wordwrap($h.$o,20);


                        Certainly longer than I'd like, but having the require date range outside of an epoch timestamp makes PHP longer.



                        Try it online!



                        Input is STDIN, run with php -nF.



                        $ echo April 2 2019|php -nF cal.php



                        April 2 2019



                        Sa Su Mo Tu We Th Fr 
                        16 17 18 19 20 21 22
                        23 24 25 26 27 28 29
                        30 31 1 2 3 4 5
                        6 7 8 9 10 11 12
                        13 14 15 16 17 18 19


                        February 19 2020



                        Su Mo Tu We Th Fr Sa 
                        2 3 4 5 6 7 8
                        9 10 11 12 13 14 15
                        16 17 18 19 20 21 22
                        23 24 25 26 27 28 29
                        1 2 3 4 5 6 7


                        September 14 1752



                        Mo Tu We Th Fr Sa Su 
                        28 29 30 31 1 2 3
                        4 5 6 7 8 9 10
                        11 12 13 14 15 16 17
                        18 19 20 21 22 23 24
                        25 26 27 28 29 30 1





                        share|improve this answer











                        $endgroup$

















                          0












                          $begingroup$


                          PHP, 197 191 bytes



                          $d=date_create($argn)->sub($i=new DateInterval(P17D));$i->d=1;while($x++<35)if($x<8)$h.=substr($d->format(D),0,2).' ';$o.=sprintf('% 2s ',$d->format(j));$d->add($i);echo wordwrap($h.$o,20);


                          Certainly longer than I'd like, but having the require date range outside of an epoch timestamp makes PHP longer.



                          Try it online!



                          Input is STDIN, run with php -nF.



                          $ echo April 2 2019|php -nF cal.php



                          April 2 2019



                          Sa Su Mo Tu We Th Fr 
                          16 17 18 19 20 21 22
                          23 24 25 26 27 28 29
                          30 31 1 2 3 4 5
                          6 7 8 9 10 11 12
                          13 14 15 16 17 18 19


                          February 19 2020



                          Su Mo Tu We Th Fr Sa 
                          2 3 4 5 6 7 8
                          9 10 11 12 13 14 15
                          16 17 18 19 20 21 22
                          23 24 25 26 27 28 29
                          1 2 3 4 5 6 7


                          September 14 1752



                          Mo Tu We Th Fr Sa Su 
                          28 29 30 31 1 2 3
                          4 5 6 7 8 9 10
                          11 12 13 14 15 16 17
                          18 19 20 21 22 23 24
                          25 26 27 28 29 30 1





                          share|improve this answer











                          $endgroup$















                            0












                            0








                            0





                            $begingroup$


                            PHP, 197 191 bytes



                            $d=date_create($argn)->sub($i=new DateInterval(P17D));$i->d=1;while($x++<35)if($x<8)$h.=substr($d->format(D),0,2).' ';$o.=sprintf('% 2s ',$d->format(j));$d->add($i);echo wordwrap($h.$o,20);


                            Certainly longer than I'd like, but having the require date range outside of an epoch timestamp makes PHP longer.



                            Try it online!



                            Input is STDIN, run with php -nF.



                            $ echo April 2 2019|php -nF cal.php



                            April 2 2019



                            Sa Su Mo Tu We Th Fr 
                            16 17 18 19 20 21 22
                            23 24 25 26 27 28 29
                            30 31 1 2 3 4 5
                            6 7 8 9 10 11 12
                            13 14 15 16 17 18 19


                            February 19 2020



                            Su Mo Tu We Th Fr Sa 
                            2 3 4 5 6 7 8
                            9 10 11 12 13 14 15
                            16 17 18 19 20 21 22
                            23 24 25 26 27 28 29
                            1 2 3 4 5 6 7


                            September 14 1752



                            Mo Tu We Th Fr Sa Su 
                            28 29 30 31 1 2 3
                            4 5 6 7 8 9 10
                            11 12 13 14 15 16 17
                            18 19 20 21 22 23 24
                            25 26 27 28 29 30 1





                            share|improve this answer











                            $endgroup$




                            PHP, 197 191 bytes



                            $d=date_create($argn)->sub($i=new DateInterval(P17D));$i->d=1;while($x++<35)if($x<8)$h.=substr($d->format(D),0,2).' ';$o.=sprintf('% 2s ',$d->format(j));$d->add($i);echo wordwrap($h.$o,20);


                            Certainly longer than I'd like, but having the require date range outside of an epoch timestamp makes PHP longer.



                            Try it online!



                            Input is STDIN, run with php -nF.



                            $ echo April 2 2019|php -nF cal.php



                            April 2 2019



                            Sa Su Mo Tu We Th Fr 
                            16 17 18 19 20 21 22
                            23 24 25 26 27 28 29
                            30 31 1 2 3 4 5
                            6 7 8 9 10 11 12
                            13 14 15 16 17 18 19


                            February 19 2020



                            Su Mo Tu We Th Fr Sa 
                            2 3 4 5 6 7 8
                            9 10 11 12 13 14 15
                            16 17 18 19 20 21 22
                            23 24 25 26 27 28 29
                            1 2 3 4 5 6 7


                            September 14 1752



                            Mo Tu We Th Fr Sa Su 
                            28 29 30 31 1 2 3
                            4 5 6 7 8 9 10
                            11 12 13 14 15 16 17
                            18 19 20 21 22 23 24
                            25 26 27 28 29 30 1






                            share|improve this answer














                            share|improve this answer



                            share|improve this answer








                            edited 1 hour ago

























                            answered 1 hour ago









                            gwaughgwaugh

                            1,998517




                            1,998517





















                                0












                                $begingroup$


                                JavaScript (Node.js), 205 bytes








                                f=
                                d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
                                `

                                <input type=date oninput=o.textContent=f(this.value)><pre id=o>





                                Try it online! Takes input as a string in YYYY-MM-DD format, but the input field in the snippet displays your local date format.






                                share|improve this answer









                                $endgroup$












                                • $begingroup$
                                  padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                                  $endgroup$
                                  – Embodiment of Ignorance
                                  10 mins ago
















                                0












                                $begingroup$


                                JavaScript (Node.js), 205 bytes








                                f=
                                d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
                                `

                                <input type=date oninput=o.textContent=f(this.value)><pre id=o>





                                Try it online! Takes input as a string in YYYY-MM-DD format, but the input field in the snippet displays your local date format.






                                share|improve this answer









                                $endgroup$












                                • $begingroup$
                                  padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                                  $endgroup$
                                  – Embodiment of Ignorance
                                  10 mins ago














                                0












                                0








                                0





                                $begingroup$


                                JavaScript (Node.js), 205 bytes








                                f=
                                d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
                                `

                                <input type=date oninput=o.textContent=f(this.value)><pre id=o>





                                Try it online! Takes input as a string in YYYY-MM-DD format, but the input field in the snippet displays your local date format.






                                share|improve this answer









                                $endgroup$




                                JavaScript (Node.js), 205 bytes








                                f=
                                d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
                                `

                                <input type=date oninput=o.textContent=f(this.value)><pre id=o>





                                Try it online! Takes input as a string in YYYY-MM-DD format, but the input field in the snippet displays your local date format.






                                f=
                                d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
                                `

                                <input type=date oninput=o.textContent=f(this.value)><pre id=o>





                                f=
                                d=>[...`012345`].map(r=>[...`0123456`].map(c=>`$new Date(d+864e5*(+c+r*7-24))[+r?`getUTCDate`:`toUTCString`]()`.slice(0,2).padStart(2)).join` `,d=new Date(d.slice(0,2)%4+20+d.slice(2)).getTime()).join`
                                `

                                <input type=date oninput=o.textContent=f(this.value)><pre id=o>






                                share|improve this answer












                                share|improve this answer



                                share|improve this answer










                                answered 21 mins ago









                                NeilNeil

                                82.5k745179




                                82.5k745179











                                • $begingroup$
                                  padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                                  $endgroup$
                                  – Embodiment of Ignorance
                                  10 mins ago

















                                • $begingroup$
                                  padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                                  $endgroup$
                                  – Embodiment of Ignorance
                                  10 mins ago
















                                $begingroup$
                                padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                                $endgroup$
                                – Embodiment of Ignorance
                                10 mins ago





                                $begingroup$
                                padStart(2) -> padStart(3), remove the space in the join string for -1 byte
                                $endgroup$
                                – Embodiment of Ignorance
                                10 mins ago












                                0












                                $begingroup$


                                R, 66 bytes





                                function(d,g=format)write(c(g(d+-3:3,"%a"),g(d+-17:17,"%3d")),1,7)


                                Try it online!



                                Pads date numbers with leading 0s; takes input as a Date, which can be created by using as.Date("YYYY/MM/DD").



                                Weirdly short for an R ascii-art answer...





                                share









                                $endgroup$

















                                  0












                                  $begingroup$


                                  R, 66 bytes





                                  function(d,g=format)write(c(g(d+-3:3,"%a"),g(d+-17:17,"%3d")),1,7)


                                  Try it online!



                                  Pads date numbers with leading 0s; takes input as a Date, which can be created by using as.Date("YYYY/MM/DD").



                                  Weirdly short for an R ascii-art answer...





                                  share









                                  $endgroup$















                                    0












                                    0








                                    0





                                    $begingroup$


                                    R, 66 bytes





                                    function(d,g=format)write(c(g(d+-3:3,"%a"),g(d+-17:17,"%3d")),1,7)


                                    Try it online!



                                    Pads date numbers with leading 0s; takes input as a Date, which can be created by using as.Date("YYYY/MM/DD").



                                    Weirdly short for an R ascii-art answer...





                                    share









                                    $endgroup$




                                    R, 66 bytes





                                    function(d,g=format)write(c(g(d+-3:3,"%a"),g(d+-17:17,"%3d")),1,7)


                                    Try it online!



                                    Pads date numbers with leading 0s; takes input as a Date, which can be created by using as.Date("YYYY/MM/DD").



                                    Weirdly short for an R ascii-art answer...






                                    share











                                    share


                                    share










                                    answered 9 mins ago









                                    GiuseppeGiuseppe

                                    17.5k31152




                                    17.5k31152



























                                        draft saved

                                        draft discarded
















































                                        If this is an answer to a challenge…



                                        • …Be sure to follow the challenge specification. However, please refrain from exploiting obvious loopholes. Answers abusing any of the standard loopholes are considered invalid. If you think a specification is unclear or underspecified, comment on the question instead.


                                        • …Try to optimize your score. For instance, answers to code-golf challenges should attempt to be as short as possible. You can always include a readable version of the code in addition to the competitive one.
                                          Explanations of your answer make it more interesting to read and are very much encouraged.


                                        • …Include a short header which indicates the language(s) of your code and its score, as defined by the challenge.


                                        More generally…



                                        • …Please make sure to answer the question and provide sufficient detail.


                                        • …Avoid asking for help, clarification or responding to other answers (use comments instead).




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function ()
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f182681%2ftoday-is-the-center%23new-answer', 'question_page');

                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown







                                        Popular posts from this blog

                                        Are there any AGPL-style licences that require source code modifications to be public? Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Force derivative works to be publicAre there any GPL like licenses for Apple App Store?Do you violate the GPL if you provide source code that cannot be compiled?GPL - is it distribution to use libraries in an appliance loaned to customers?Distributing App for free which uses GPL'ed codeModifications of server software under GPL, with web/CLI interfaceDoes using an AGPLv3-licensed library prevent me from dual-licensing my own source code?Can I publish only select code under GPLv3 from a private project?Is there published precedent regarding the scope of covered work that uses AGPL software?If MIT licensed code links to GPL licensed code what should be the license of the resulting binary program?If I use a public API endpoint that has its source code licensed under AGPL in my app, do I need to disclose my source?

                                        2013 GY136 Descoberta | Órbita | Referências Menu de navegação«List Of Centaurs and Scattered-Disk Objects»«List of Known Trans-Neptunian Objects»

                                        Button changing it's text & action. Good or terrible? The 2019 Stack Overflow Developer Survey Results Are Inchanging text on user mouseoverShould certain functions be “hard to find” for powerusers to discover?Custom liking function - do I need user login?Using different checkbox style for different checkbox behaviorBest Practices: Save and Exit in Software UIInteraction with remote validated formMore efficient UI to progress the user through a complicated process?Designing a popup notice for a gameShould bulk-editing functions be hidden until a table row is selected, or is there a better solution?Is it bad practice to disable (replace) the context menu?