Sotilasajan muunnin: 24 tunnista 12 tunnin kelloon
Muunna sotilasaika normaaliajaksi ja takaisin. Tunnistaa muodot 2330, 23:30 ja 11:30 PM sekä selittää keskiyön merkinnät 0000 ja 2400 sekä 12 AM:n ja 12 PM:n erot.
Military Time Converter
Type a time in either notation. The converter reads 2330, 23:30 and 11:30 PM, and writes the same reading in both.
The same time in both notations
Dokumentaatio
Sotilasajan muunnin
Sotilasaika on 24-tuntinen kello: tunnit on numeroitu 00–23, ja kellonaika kirjoitetaan tavallisesti neljänä numerona ilman erotinta, esimerkiksi 2330 tarkoittaa puoli kaksitoista yöllä. Tämä sivu muuntaa kirjoitetun kellonajan tästä merkintätavasta tavalliseen 12-tuntiseen kelloon ja päinvastoin sekä laskee ajan minuutteina ja tunteina keskiyöstä.
Mitä laskin tekee
Muunnin lukee yhden kirjoitetun kellonajan ja päättelee itse, kumpaa merkintätapaa siinä käytetään. AM- tai PM-merkintä tarkoittaa 12-tuntista aikaa. Ilman merkintää käytetään 24-tuntista aikaa. Tämä sääntö ratkaisee ainoan muodon, joka näyttää samalta molemmilla tavoilla: paljas 12:30 ei sisällä merkintää, joten se tulkitaan 24-tuntiseksi ajaksi eli puoleksi yhdeksi keskipäivällä.
Hyväksyttyjä syötteitä ovat neljä numeroa (2330), kolme numeroa (745), pelkkä tunti (8), kaksoispisteellinen muoto (23:30), merkinnällä varustettu 12-tuntinen aika (11:30 PM, 7 pm, 11:30 p.m.) sekä sanallinen jälkiliite (2330 hours, 0800 hrs), joka poistetaan ennen numeroiden lukemista. Kolmi- tai nelinumeroisessa syötteessä kaksi viimeistä numeroa ovat aina minuutit, joten 745 tarkoittaa 7:45.
Tulos on sama kellonaika kolmessa kirjallisessa muodossa sekä kaksi lukuarvoa: nelinumeroinen sotilasaika, sama kellonaika muodossa HH:MM, 12-tuntinen muoto AM- tai PM-merkinnällä, minuutit keskiyöstä ja sama aika tunteina.
Näin muunnetaan 12-tuntinen aika sotilasajaksi
Ota tunti sellaisena kuin se on kirjoitettu, korvaa 12 luvulla 0 ja lisää 12, jos merkintä on PM. Minuutit eivät muutu. Symbolein:
missä H on 24-tuntisen kellon tunti väliltä 0–23; h on 12-tuntisen kellon kirjoitettu tunti väliltä 1–12; ja p on PM-ajalle 1 ja AM-ajalle 0. Mod-operaatio tarkoittaa jakojäännöstä, joten 12 mod 12 on 0 ja 7 mod 12 on 7.
Jakojäännös on koko menetelmän ydin. Sen avulla 12 AM muuttuu tunniksi 0 ja 12 PM tunniksi 12 yhdellä lausekkeella. Jos nämä kaksi tapausta kirjoitetaan erikseen käsin, muunnos menee yleensä väärin, koska tapaukset näyttävät symmetrisiltä mutta eivät ole sitä.
Näin muunnetaan sotilasaika 12-tuntiseksi ajaksi
Toiseen suuntaan muunnettaessa tunti on jälleen jakojäännös, paitsi että jakojäännös 0 kirjoitetaan muodossa 12:
12 & \text{if } H \bmod 12 = 0 \\ H \bmod 12 & \text{muulloin} \end{cases}$$ Merkintä on AM tunneille 0–11 ja PM tunneille 12–23. 12-tuntisessa muodossa tunnin alun nolla jätetään pois, mutta minuuteissa se säilytetään, joten tunti 8 ja minuutti 5 kirjoitetaan 8:05 AM. ### Minuutit ja tunnit keskiyöstä Sivu ilmoittaa myös, kuinka pitkällä päivä on kyseisen kellonajan kohdalla. Molemmat lukuarvot saadaan yhdestä kokonaisluvusta: $$t = 60H + m$$ $$T = \frac{t}{60}$$ missä *m* on minuutit väliltä 0–59; *t* on minuutit keskiyöstä väliltä 0–1440; ja *T* on sama määrä tunteina. Tuntikortti jakaa minuuttimäärän kerran sen sijaan, että tuntiin lisättäisiin murtoluku. Nämä kaksi laskutapaa eroavat 39:ssä 1440 lukemasta, koska tietokone tallentaa murtoluvut binäärimuodossa eikä yhdellä kuudeskymmenesosalla ole täsmällistä binääriesitystä. Vain tämä yksi jako tuottaa sivulla murtoluvun, eikä mikään muunnoksessa riipu sen arvosta. Kortti näyttää neljä desimaalia, mikä riittää pitämään kaikki 1440 lukemaa erillään, koska yksi minuutti on noin 0,0167 tuntia. ### Laskuesimerkki Syötteellä 2330 sivu lukee tunniksi 23 ja minuutiksi 30, eikä merkintää ole, joten syöte on 24-tuntinen aika. 12-tuntinen tunti: 23 mod 12 on 11, eikä 11 ole 0, joten tunti on 11. Tunti 23 on vähintään 12, joten merkintä on PM. Kellonaika on 11:30 PM. Minuutit keskiyöstä: 60 kertaa 23 on 1380, ja 1380 plus 30 on 1410. Tunteina: 1410 jaettuna 60:llä on 23,5. Toinen esimerkki toimii päinvastaiseen suuntaan. Ajalla 7:45 PM merkintä antaa *p*:n arvoksi 1, ja 7 mod 12 on 7, joten tunti on 7 plus 12 eli 19. Sotilasaika on 1945 ja kaksoispisteellinen muoto 19:45. Minuutit keskiyöstä: 60 kertaa 19 on 1140, plus 45 on 1185, mikä on 19,75 tuntia. ### Yleisiä muunnoksia | Sotilasaika | 24-tuntinen | 12-tuntinen | Minuutit keskiyöstä | |---|---|---|---| | 0000 | 00:00 | 12:00 AM (keskiyö) | 0 | | 0600 | 06:00 | 6:00 AM | 360 | | 0800 | 08:00 | 8:00 AM | 480 | | 1200 | 12:00 | 12:00 PM (keskipäivä) | 720 | | 1330 | 13:30 | 1:30 PM | 810 | | 1800 | 18:00 | 6:00 PM | 1080 | | 2100 | 21:00 | 9:00 PM | 1260 | | 2330 | 23:30 | 11:30 PM | 1410 | | 2400 | 24:00 | 12:00 AM (keskiyö) | 1440 | ### Keskiyö: 0000 ja 2400 Molemmat muodot ovat käytössä, eivätkä ne ole keskenään vaihdettavissa. ISO 8601 antaa yhdelle päivälle kaksi keskiyötä ja kirjoittaa ne eri tavoin. 00:00 aloittaa päivän ja 24:00 päättää sen; jälkimmäinen on sama hetki kuin seuraavan päivän 00:00. Kun kellonajan on oltava yksiselitteinen, tavallinen valinta on 00:00. Sivu säilyttää sen muodon, joka syötettiin. 0000 palautuu muodossa 0000, ja se kuvataan päivän aluksi; 2400 palautuu muodossa 2400, ja se kuvataan päivän lopuksi. Molemmat ovat 12:00 AM 12-tuntimerkinnässä, koska siinä ei ole erillistä päivän lopun kirjoitusasua. Vain 2400 lasketaan 1440 minuutiksi keskiyöstä. Muoto 2400 hyväksytään vain, kun minuutit ovat nolla. Syöte 24:30 hylätään sen sijaan, että se muutettaisiin hiljaisesti muotoon 00:30, ja tunti 24 havaitaan ennen jakojäännöksen laskemista, koska vertailu arvoon 12 tulkitsisi keskiyön PM-ajaksi. Kahden keskiyön sääntöä ja 00:00-muodon suositusta koskeva lähde on Markus Kuhnin ISO-standardin 8601 yhteenveto Cambridgen yliopistossa, joka perustuu standardiin ISO 8601:2004. Myöhempi historia käsitellään erikseen standardin omien muutosten yhteydessä: julkaistu ISO 8601-1:2019 poisti esitystavan 24:00, ja ISO 8601-1:2019/Amd 1:2022 palautti sen. ### 12 AM ja 12 PM Keskipäivä ei ole itsensä suhteen ennen eikä jälkeen, joten merkinnät a.m. (ennen keskipäivää) ja p.m. (keskipäivän jälkeen) eivät oikeastaan sovellu aikaan 12:00. Vakiintuneen käytännön mukaan 12 a.m. tarkoittaa keskiyötä ja 12 p.m. keskipäivää. American Heritage Dictionary, Canadian Press Stylebook ja NIST suosittelevat kirjoittamaan sen sijaan keskipäivä tai keskiyö, koska merkintöjen järjestys ei ole itsestään selvä. Lähde: Wikipedia-artikkeli 12-tuntisesta kellosta. Sivu noudattaa tätä suositusta ja lisää sanan sulkeisiin molemmissa tapauksissa: 12:00 AM (keskiyö) ja 12:00 PM (keskipäivä), eikä jätä merkintää yksin välittämään merkitystä. ### Mitkä luvut ovat täsmällisiä Jokainen muunnoksessa käytetty luku määrittelee kirjoitetun merkintätavan eikä ole mittaustulos, joten parempi koe ei voi muuttaa niitä. | Luku | Arvo | Tarkka? | Lähde | |---|---|---|---| | Tunteja vuorokaudessa | 24 | täsmällinen 24-tuntisen merkintätavan määritelmän perusteella | Wikipedia, ”24-tuntinen kello” | | Tunteja vuorokauden kummassakin puoliskossa | 12 | täsmällinen 12-tuntisen merkintätavan määritelmän perusteella | Wikipedia, ”12-tuntinen kello” | | Minuutteja tunnissa | 60 | määritelmän mukaan tarkka | BIPM:n SI-esite, 9. painos: minuutti on 60 s ja tunti 60 min niiden SI:n kanssa käytettäväksi hyväksyttyjen muiden kuin SI-yksiköiden joukossa | | Minuutteja vuorokaudessa | 1440 | täsmällinen, koska se on 24 kertaa 60 ja molemmat tekijät ovat täsmällisiä | seuraa kahdesta edellä olevasta rivistä | Tunti ja minuutti luetaan kokonaislukuina, ja kaikki sivun tekemät vertailut koskevat kokonaislukuja, joten pyöristetty arvo ei ratkaise yhtäkään vastausta. ### Mitä muunnin hylkää Jokaisesta näistä annetaan oma ilmoitus arvauksen sijaan: tyhjä kenttä; muoto, jota sivu ei osaa lukea; sekunteja sisältävä syöte, kuten 12:30:45; minuutti, joka on suurempi kuin 59; 12-tuntinen tunti alueen 1–12 ulkopuolella, kuten 13:00 PM tai 0:45 AM; sekä 24-tuntinen tunti, joka on suurempi kuin 23 eikä ole muotoa 2400. Sekunnit eivät kuulu käsiteltävään asiaan. Sivu muuntaa pelkän kellonajan, joten siihen ei liity päivämäärää, aikavyöhykettä eikä UTC-poikkeamaa. ### Usein kysyttyä **Mitä 2330 on tavallisessa kellonajassa?** 11:30 PM. Tunti 23 antaa jakojäännökseksi 11 jaettuna 12:lla, ja 23 on vähintään 12, joten merkintä on PM. **Miten iltapäivän kellonaika muunnetaan sotilasajaksi?** Lisää tuntiin 12 ja säilytä minuutit. Ajalla 7:45 PM: 7 plus 12 on 19, joten vastaus on 1945. Ainoa poikkeus on 12 PM, joka säilyy tuntina 12, koska 12 mod 12 on 0. **Onko keskiyö 0000 vai 2400?** Molempia käytetään. ISO 8601 käsittelee aikaa 00:00 päivämäärän alkuna ja aikaa 24:00 sen loppuna, ja nämä tarkoittavat samaa hetkeä vuorokauden erolla. 00:00 on tavallinen valinta, kun kellonajan on oltava yksiselitteinen. **Onko 12 PM keskipäivä vai keskiyö?** Vakiintuneen käytännön mukaan 12 p.m. tarkoittaa keskipäivää ja 12 a.m. keskiyötä. Koska merkinnät sekoittavat ihmisiä, useat tyylioppaat suosittelevat kirjoittamaan niiden sijaan keskipäivä tai keskiyö, ja tämä sivu näyttää sanan sulkeissa. **Tarkoittaako 12:30 puolta keskipäivän jälkeen vai puolta keskiyön jälkeen?** Sivu tulkitsee sen puoleksi keskipäivän jälkeen, koska siinä ei ole AM- tai PM-merkintää ja se käsitellään siksi 24-tuntisena aikana. Puolta keskiyön jälkeen varten syötä 12:30 AM tai 0030. **Käsitteleekö muunnin sekunteja tai aikavyöhykkeitä?** Ei. Se muuntaa vain tunnit ja minuutit, eikä siihen liity päivämäärää, aikavyöhykettä tai poikkeamaa. Sekunteja sisältävä syöte hylätään sen sijaan, että se katkaistaisiin.