Lauantaille sattuneet jouluaatot

Anonyymi

Minä vuosina välillä 1900-2020, jouluaattoa vietettiin lauantaina. Ratkaise millä kielellä haluat, kunhan koodista tulee lyhyt. Aina ei python voita, vai voittaako sittenkin kun on kyse kirjoitettujen merkkien määrästä.

30

75

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      PHP:
      for($x=1900;$x<=2020;$x ){if(date('N', mktime(00, 00, 00, 12, 24, $x) ) == 6){echo $x."<br />";}

      • Anonyymi

        PHP 79 merkkiä

        for($x=1900;$x<=2020;$x ){if(date('N',mktime(0,0,0,12,24,$x))==6)echo $x." ";}

        Voit testata koodin Interaktiivissa PHP:een komentotulkissa siirtymällä komentokehotteeseen Ctrl Alt t ja suorittamalla komennon:

        php -a

        Vuosiluvut tulostuvat välilyönnillä erotettuna.


    • Anonyymi

      BASIC 138 merkkiä

      Public Sub Main()
      Dim x As Short
      For x = 1900 To 2020
      If WeekDay(Date(x, 12, 25)) = 0 Then Print Format(Date(x, 12, 25), "yyyy")
      Next
      End

      Muunneltuna Gambas 3.15.2 esimerkeistä. Voit testata koodin online editorissa ohjelman kotisivulla tai asentamalla kehitysympäristön omalle koneellesi.

      • Anonyymi

        Jouluaatto on 24. päivä


    • Anonyymi

      1904 jouluaatto oli lauantaina.

      • Anonyymi

        - Anonyymi: "1904 jouluaatto oli lauantaina."
        ja
        - Anonyymi: "Jouluaatto on 24. päivä"

        Olette kumpikin oikeassa, muuntelu jäi keskeneräiseksi ja oikein se olisi ollut seuraava, joka ei merkkien määrää kuitenkaan muuta:

        Public Sub Main()
        Dim x As Short
        For x = 1900 To 2020
        If WeekDay(Date(x, 12, 24)) = 6 Then Print Format(Date(x, 12, 24), "yyyy")
        Next
        End


    • Anonyymi

      Jos nyt välttämättä pitää "juhlia" jotain aasialaisen paimentolaiskansan muinaisia tarinoita niin siirrettäköön se vuodenvaihteeseen niin että selvittäisiin yksillä "pyhillä".

      • Anonyymi

        Entäs ne vapaat, jotka jää pitämättä, tai niin tarkoitit varmaan perättäin eikä päällekkäin.


      • Anonyymi
        Anonyymi kirjoitti:

        Entäs ne vapaat, jotka jää pitämättä, tai niin tarkoitit varmaan perättäin eikä päällekkäin.

        Siinä saattaisi olla ideaa kun kaikki vapaat niputetaan yhteen ja pidetään kerralla, saataisiin 115 päivän loma arkipyhistä ja viikonlopuista siihen kun ynnätään talviloma ja kesäloma isyysvapaat ja sairaslomat niin johan on pitkä loma.


      • Anonyymi

      • Anonyymi

    • Anonyymi

      Jos jouluaatto on tänä vuonna lauantaina, on se ensi vuonna sunnuntaina, eli se siirtyy aina yhden päivän eteenpäin joka vuosi, niin, paitsi karkausvuotena, jolloin se siirtyy kaksi päivää eteenpäin.

      Että tämmöistä tällä kertaa.

      • Anonyymi

        Mutta kun ei ole.


      • Anonyymi
        Anonyymi kirjoitti:

        Mutta kun ei ole.

        Niin, niin, jos olisi . . .


    • Anonyymi

      Zellerin säännöllä ja JavaScriptillä:

      const z = (p, m, v) => {
      if (m < 3)
      {
      m = m 12;
      v = v - 1;
      }
      const J = Math.floor(v / 100);
      const K = v - (100 * J);
      const S = Math.floor(2.6 * m - 5.39) Math.floor(K / 4) Math.floor(J / 4) p K - (2 * J);
      return S - (7 * Math.floor(S / 7));
      }

      for (let v = 1900; v <= 2020; v ) {
      if (z(24,12,v) == 6) console.log(v);
      }

      /*
      1904
      1910
      1921
      1927
      1932
      1938
      1949
      1955
      1960
      1966
      1977
      1983
      1988
      1994
      2005
      2011
      2016
      */

      • Anonyymi

        Taitaa olla ensimmäinen, jossa viikonpäivää ei päätelty valmisfunktiolla.


      • Anonyymi
        Anonyymi kirjoitti:

        Taitaa olla ensimmäinen, jossa viikonpäivää ei päätelty valmisfunktiolla.

        C-kielellä saisi muka viikonpäivän näin:

        (d =m<3?y--:y-2,23*m/9 d 4 y/4-y/100 y/400)%7

        Mutta ei tuo ainakaan minulla antanut oikeita arvoja, kuten ei Sakamoton metodikaan, joka antoi samat kuin tuo Michael Keith / Tom Craver versio.

        https://en.wikipedia.org/wiki/Calculate_the_day_of_the_week


    • Anonyymi

      JavaScript, 112 merkkiä

      Array.from({length:121},(_,j)=>new Date(1900 j,11,24)).filter(d=>("" d).includes("Sat")).map(d=>d.getFullYear())

      Huomaa, että kuukausi lähtee nollasta, joten joulukuu on 11.

      • Anonyymi

        JavaScriptillä tyylikkäästi yhdelle riville tungettuna.

        for(let v=1900; v<=2020; v ) if(new Date(v,11,24).getDay()==6) console.log(v);


      • Anonyymi
        Anonyymi kirjoitti:

        JavaScriptillä tyylikkäästi yhdelle riville tungettuna.

        for(let v=1900; v<=2020; v ) if(new Date(v,11,24).getDay()==6) console.log(v);

        Pyyttonilla vastaava:

        import datetime
        for v in range(1900, 2021):
          if datetime.datetime(v, 12, 24).weekday() == 5:
            print(v)


      • Anonyymi
        Anonyymi kirjoitti:

        JavaScriptillä tyylikkäästi yhdelle riville tungettuna.

        for(let v=1900; v<=2020; v ) if(new Date(v,11,24).getDay()==6) console.log(v);

        Ai joo getDay():llähän saa viikonpäivän kätevämmin.


      • Anonyymi
        Anonyymi kirjoitti:

        Ai joo getDay():llähän saa viikonpäivän kätevämmin.

        Mutta lauantai on arvo 5, kun viikonpäiväkin lähtee nollasta. Melkoista sekamelskaa tuntuu olevan nuo mikä lähtee mistäkin.


      • Anonyymi
        Anonyymi kirjoitti:

        Mutta lauantai on arvo 5, kun viikonpäiväkin lähtee nollasta. Melkoista sekamelskaa tuntuu olevan nuo mikä lähtee mistäkin.

        Pyyttonissa on maanantai 0, Javaskriptissä sunnuntai.


      • Anonyymi
        Anonyymi kirjoitti:

        JavaScriptillä tyylikkäästi yhdelle riville tungettuna.

        for(let v=1900; v<=2020; v ) if(new Date(v,11,24).getDay()==6) console.log(v);

        KOVA KAKSIKKO
        79 JavaScript
        79 PHP


      • Anonyymi
        Anonyymi kirjoitti:

        KOVA KAKSIKKO
        79 JavaScript
        79 PHP

        Pythonin puolesta; aina ei voi voittaa, ei edes joka kerta.


      • Anonyymi
        Anonyymi kirjoitti:

        KOVA KAKSIKKO
        79 JavaScript
        79 PHP

        Nuuka koodari muuttaisi ehdon "<=2020" muotoon "<2021". Säästäisi kuitenkin kallisarvoisen merkin.


      • Anonyymi
        Anonyymi kirjoitti:

        Nuuka koodari muuttaisi ehdon "<=2020" muotoon "<2021". Säästäisi kuitenkin kallisarvoisen merkin.

        Hyvä sinä ajatteleva "Anonyymi", niin tekisi, sillä saa vakaamman johtoaseman, kumpikin käressä oleva.


      • Anonyymi

        Tässä vähän eri tavalla tehtynä.

        [...new Array(120).keys()].filter(i=>new Date(i 1900,11,24).getDay()==6).map(v=>console.log(v 1900))


      • Anonyymi
        Anonyymi kirjoitti:

        Tässä vähän eri tavalla tehtynä.

        [...new Array(120).keys()].filter(i=>new Date(i 1900,11,24).getDay()==6).map(v=>console.log(v 1900))

        Toimii, ja on se sen verran erilainen, ettei ymmärrys riittänyt.


      • Anonyymi
        Anonyymi kirjoitti:

        Toimii, ja on se sen verran erilainen, ettei ymmärrys riittänyt.

        Ensin tehdään taulukko 0...120 (tuossa on virhe, pitäisi olla 0...121).

        [...new Array(120).keys()]

        Sitten suodatetaan filter()-metodilla pois ylimääräiset taulukon alkiot i käyttämällä Date-objektin getDay()-metodia, joka palauttaa viikonpäivän numeron. Jos on 6, niin kyseessä on lauantai ja alkio jää taulukkoon. Päivämäärä joka Date-objektille annetaan on i 1900, 11,24. Kuten aikaisemmin on mainittu, niin Joulukuuta vastaava numeerinen arvo on 11.

        .filter(i=>new Date(i 1900,11,24).getDay()==6)

        Lopuksi pyöräytetään taulukon alkiot map()-metodilla console.log():lla tulostettavaksi muodossa alkion arvo 1900.

        .map(v=>console.log(v 1900))

        Ja tuossa on se virhe, ettei käy läpi kuin vuodet 1900–2019, koska alkiotaulukossa ei ole alun perin kuin arvot 0–119. Lopputulokseen ei tietenkään vaikuta, koska vuonna 2020 jouluaatto ei ole lauantaina.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mitään järkeä?

      Että ollaan erillään? Kummankin pää on kovilla.
      Ikävä
      127
      1944
    2. Noniin rakas

      Annetaanko pikkuhiljaa jo olla, niin ehkä säilyy vienot hymyt kohdatessa. En edelleenkään halua sulle tai kenellekään mi
      Ikävä
      100
      1690
    3. Lasten hyväksikäyttö netissä - Joka 3. nuori on saanut seksuaalisen yhteydenoton pedofiililtä

      Järkyttävää! Lapsiin kohdistuva seksuaalinen hyväksikäyttö verkossa on yhä pahempi ongelma. Ulkolinja: Lasten hyväksikäy
      Maailman menoa
      56
      1306
    4. Kumpi vetoaa enemmän sinuun

      Kaivatun ulkonäkö vai persoonallisuus? Ulkonäössä kasvot vai vartalo? Mikä luonteessa viehättää eniten? Mikä ulkonäössä?
      Ikävä
      67
      1244
    5. Multa sulle

      Pyörit 24/7 mielessä, kuljet mun mukana, mielessä kyselen sun mielipiteitä, vitsailen sulle, olen sydän auki, aitona. M
      Ikävä
      31
      1008
    6. Mies, eihän sulla ole vaimoa tai naisystävää?

      Minusta tuntuu jotenkin, että olisit eronnut joskus, vaikka en edes tiedä onko se totta. Jos oletkin oikeasti edelleen s
      Ikävä
      47
      906
    7. Nainen, olen tutkinut sinua paljon

      Salaisuutesi ei ole minulle salaisuus. Ehkä teimme jonkinlaista vaihtokauppaa kun tutkisimme toisiamme. Meillä oli kumm
      Ikävä
      51
      903
    8. Onko sulla empatiakykyä?

      Etkö tajua yhtään miltä tämä tuntuu minusta? Minä ainakin yritän ymmärtää miltä sinusta voisi tuntua. En usko, että olet
      Ikävä
      44
      872
    9. Tavoitteeni onkin ärsyttää

      Sua niin turhaudut ja unohdat koko homman
      Ikävä
      107
      828
    10. Olet myös vähän ärsyttävä

      Tuntuu, että olet tahallaan nuin vaikeasti tavoiteltava. En tiedä kauanko jaksan tätä näin.
      Ikävä
      37
      820
    Aihe