After a while there is no conversion necessary. 5 pm is 5 pm is 17:00. They are the same. UTC to local however can get fucked. Time zone variables, daylight standard/savings variables, no thanks.
Yeah, I never found adding 12 to or from a number to be particularly challenging. Still, I do wish AM/PM would go away, not to mention DST. Can’t escape UTC and time zones, though, not reasonably, anyway. If for no other reason than doing the conversion makes you aware of how inconvenient your suggested meeting time is for the other party.
If "am/pm indicator" = "pm" AND "hour" =/= "12" ADD "12" to "hour" Else Ignore the am/pm indicator, time is correct in 24 hour format.
Disclaimer: I am not a programmer, I have no idea if my “code” is written in the correct format.
If only this was true, but for some reason midnight is 12 am. And noon is 12 pm (I’m aware that the reason is that 12:00:00.00001 is in the second half of the day. I just think it should be called 0 pm).
Midnight is 00:00 is 12am. They accounted for 12pm, but need to subtract 12 if it’s 12am.
So, you’d do away with 12 entirely and make AM/PM 0-based: 00:00am - 11:59am, and then 00:00pm - 11:59pm? Makes sense if you’re a programmer, but 0 is a fairly recent invention, and most daily measuring concepts are fundamentally 1-based. Heck, we couldn’t even get all programming languages to agree on 0-based array indexing (looking at you, MATLAB, and you, bash).
As far as pseudocode goes, this is pretty damn good. The main thing I’d change is that things in “quotes” generally represent strings, i.e. literal text. Variable names usually don’t have quotes around them. That’s a universal enough trait of real programming languages that it would almost never not transfer to pseudocode. Also, numbers intended to be read as numbers don’t typically have quotes.
How I would change this accordingly
If am_pm_indicator = "pm" AND hour =/= 12 ADD 12 to hour Else Ignore the am/pm indicator, time is correct in 24 hour format. # Leaving this as-is because it's more like a comment than code anyway
What is this? Some sort of COBOL or something.
Idk its my non-programmer’s impression of what code looks like, sorry if its incorrect 😅
We call that pseudocode and it looks fine to me. No computer will run it natively (AI meat grinders aside), but most devs will be able to pick up on the logic and convert it to actual code.
Disclaimer: am a programmer.
Edit: as an aside, manually dealing with time is its own form of madness and is usually best left to libraries (ie other people’s code) whenever possible.
My favorite is the fact that Microsoft intentionally left a bug in Excel that treats 1900 as a leap year when it wasn’t so they could maintain compatability with Lotus 1-2-3. And at this point fixing it would cause nearly every date value in excel files to display as off by one day and break a bunch of date formulas.
https://learn.microsoft.com/en-us/office/troubleshoot/excel/wrongly-assumes-1900-is-leap-year
Wow I’ve seen some really weird backwards compatibility issues, but this takes the cake. I would have imagined that in the move to XLSX they could have addressed this and sorted it out when saving, but nope, I guess having all days off by one and maintaining a support page explaining Lotus123 backwards compatibility for forever is earlier?
Can confirm Source: am a grammerpro
This is honestly exactly what programming is: breaking down big problems into step by step simple problems. If you’ve never considered taking up programming before, I’d suggest you try it sometime and see where it takes you. It’s not hard to learn, it just takes time.
COBOL is an old language Internet to make programs look a bit like English descriptions of what was needed.
I don’t really know it, but your code reminded me of the idea of it.
Don’t worry if your code is incorrect, just make random changes until you hit on something that no longer results in errors :)
You should program
You don’t even need to convert anything if they meant 5am.
Yea, you just disown them as a friend and walk away
A real friend would never make you do something that early
Why’d you have to say 5AM instead of just 5? Now I need to convert it to 24h time
5+12
Or
17-2, drop the 1
yeah, adding twelve to a single-digit number really does make my brain freeze like that. Something something can’t do math under pressure.
This might help you: you’re not adding 12 to a single-digit number. Just do 2 + x then throw a 1 in front, or add 10. Whichever is easier to conceptualize. (Where x is the single-digit number, in case that needed clarifying)
That’s OK, champ.
(5+2) + 10
Just add 12 like a math nerd
Except that is incorrect for 12am.
truly the hardest challenge to work out what 12am is in military time
12am is the 24th hour, so yes it still works. I could be wrong, but I’m not.
Jesus does no one know 24hr time? No it is not it is the first hour…
12:10 am = 00:10 in 24hr time…
“Is that 24:00 AM or PM?”