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

121

    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. Kuka oli töllöntyön tekijä?

      Ketä on nyt pidätetty? Oliko syy mustasukkaisuus tyttöystävästä tai oliko muita lieventäviä seikkoja? Katuuko tekijä nyt
      Pieksämäki
      42
      4682
    2. Kotikasvatus siitä se lähtee eli missä meni vikaan että lapsesta tuli puukottaja

      Ottakaa muut oppia, normaali kotielämä. Ei liikaa edes hengellisyyttä.
      Pieksämäki
      53
      2544
    3. Jenkkilahkojen kastekaava

      Jenkkilahkojen yhteinen kastekaava on kirjoitettuna Mormonin Kirjaan, Moroni, luku-8 Pienten lapsien vanhempia uhataan
      Kaste
      139
      1034
    4. Pasi Turunen: Ensimmäisenä Helluntaina ei kastettu sylivauvoja!

      Tänään 31.5.2026 Pasi Turunen noin vastasi soittajan kysymykseen! Raamattu EI KERRO ketä kastettiin
      Kaste
      161
      1005
    5. Odotan sitä hetkeä

      kun nähdään taas. Tiedän, että sinäkin odotat. Kun se päivä koittaa, katseesi hakee minua. Ehkä arkailemme toisiamme väh
      Ikävä
      70
      926
    6. Leijonat Maailmanmestareita!

      Ihanaa Leijonat, ihanaa!!!
      Maailman menoa
      118
      891
    7. Olen melko vakuuttunut

      etten tule olemaan koskaan täysin onnellinen ilman sinua. En uskonut, että näin kävisi kenenkään kanssa. Kunnes sain kok
      Ikävä
      70
      864
    8. Mitä ajatuksia miehet, jos..?

      Nainen on 40v eikä ole omia lapsia?
      Ikävä
      137
      815
    9. Se mies rakastaa minua

      Ja minä rakastan häntä. 😌
      Ikävä
      48
      800
    10. Taas mietin että

      mitä ihmettä sanoisin, jos laittaisin viestiä. Aina voi toivottaa jotain, vaikka hyvää kesää, ja jos ei tule vastausta,
      Ikävä
      48
      756
    Aihe