Program to convert time from 12 hour to 24 hour format
Given a time at 12-hour AM/PM format, convert it to military (24-hour) time.
Note: Midnight is 12:00:00 AM on a 12-hour clock and 00:00:00 on a 24-hour clock. Noon is 12:00:00 PM on 12-hour clock and 12:00:00 on 24-hour clock
Examples:
Input : A single string containing a time in 12-hour clock format(hh:mm:ss AM or hh:mm:ss PM where 01 <= hh <= 12 or 01 <= mm,ss <= 59 Output :Convert and print the given time in 24-hour format, where 00 <= hh <= 23 Input : 07:05:45PM Output : 19:05:45
C++
// C++ program to convert 12 hour to 24 hour // format #include<iostream> using namespace std; void print24(string str) { // Get hours int h1 = ( int )str[1] - '0' ; int h2 = ( int )str[0] - '0' ; int hh = (h2 * 10 + h1 % 10); // If time is in "AM" if (str[8] == 'A' ) { if (hh == 12) { cout << "00" ; for ( int i=2; i <= 7; i++) cout << str[i]; } else { for ( int i=0; i <= 7; i++) cout << str[i]; } } // If time is in "PM" else { if (hh == 12) { cout << "12" ; for ( int i=2; i <= 7; i++) cout << str[i]; } else { hh = hh + 12; cout << hh; for ( int i=2; i <= 7; i++) cout << str[i]; } } } // Driver code int main() { string str = "07:05:45PM" ; print24(str); return 0; } |
Java
// Java program to convert 12 hour // format to 24 hour format import java.io.*; public class GFG { static void print24(String str) { // Get hours int h1 = ( int )str.charAt( 1 ) - '0' ; int h2 = ( int )str.charAt( 0 ) - '0' ; int hh = (h2 * 10 + h1 % 10 ); // If time is in "AM" if (str.charAt( 8 ) == 'A' ) { if (hh == 12 ) { System.out.print( "00" ); for ( int i = 2 ; i <= 7 ; i++) System.out.print(str.charAt(i)); } else { for ( int i = 0 ; i <= 7 ; i++) System.out.print(str.charAt(i)); } } // If time is in "PM" else { if (hh == 12 ) { System.out.print( "12" ); for ( int i = 2 ; i <= 7 ; i++) System.out.print(str.charAt(i)); } else { hh = hh + 12 ; System.out.print(hh); for ( int i = 2 ; i <= 7 ; i++) System.out.print(str.charAt(i)); } } } // Driver code public static void main (String[] args) { String str = "07:05:45PM" ; print24(str); } } // This code is contributed by Anant Agarwal. |
Python3
# Python3 program to convert 12 # hour to 24 hour format def print24(s): # Get hours h1 = ord (s[ 1 ]) - ord ( '0' ) h2 = ord (s[ 0 ]) - ord ( '0' ) hh = (h2 * 10 + h1 % 10 ) # If time is in "AM" if (s[ 8 ] = = 'A' ): if (hh = = 12 ): print ( '00' , end = '') for i in range ( 2 , 8 ): print (s[i], end = '') else : for i in range ( 0 , 8 ): print (s[i], end = '') # If time is in "PM" else : if (hh = = 12 ): print ( "12" , end = '') for i in range ( 2 , 8 ): print (s[i], end = '') else : hh = hh + 12 ; print (hh, end = '') for i in range ( 2 , 8 ): print (s[i], end = '') # Driver code if __name__ = = "__main__" : s = "07:05:45PM" print24(s) # This code is contributed by rutvik_56 |
C#
// C# program to convert 12 hour // format to 24 hour format using System; class GFG { static void print24(String str) { // Get hours int h1 = ( int )str[1] - '0' ; int h2 = ( int )str[0] - '0' ; int hh = (h2 * 10 + h1 % 10); // If time is in "AM" if (str[8] == 'A' ) { if (hh == 12) { Console.Write( "00" ); for ( int i = 2; i <= 7; i++) Console.Write(str[i]); } else { for ( int i = 0; i <= 7; i++) Console.Write(str[i]); } } // If time is in "PM" else { if (hh == 12) { Console.Write( "12" ); for ( int i = 2; i <= 7; i++) Console.Write(str[i]); } else { hh = hh + 12; Console.Write(hh); for ( int i = 2; i <= 7; i++) Console.Write(str[i]); } } } // Driver code public static void Main(String[] args) { String str = "07:05:45PM" ; print24(str); } } // This code is contributed by Rajput-Ji |
Javascript
<script> // javascript program to convert 12 hour // format to 24 hour format function print24(str) { // Get hours var h1 = Number(str[1] - '0' ); var h2 = Number(str[0] - '0' ); var hh = (h2 * 10 + h1 % 10); // If time is in "AM" if (str[8] == 'A' ) { if (hh == 12) { document.write( "00" ); for ( var i = 2; i <= 7; i++) document.write(str[i]); } else { for ( var i = 0; i <= 7; i++) document.write(str[i]); } } // If time is in "PM" else { if (hh == 12) { document.write( "12" ); for ( var i = 2; i <= 7; i++) document.write(str[i]); } else { hh = hh + 12; document.write(hh); for ( var i = 2; i <= 7; i++) document.write(str[i]); } } } // Driver code var str = "07:05:45PM" ; print24(str); // This code is contributed by bunnyram19. </script> |
19:05:45
Time Complexity: O(1)
Auxiliary Space: O(1)
Method 2: Using java Date
Java
// Java program for the above approach import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class GFG { public static String englishTime(String input) throws ParseException { // Format of the date defined in the input String DateFormat dateFormat = new SimpleDateFormat( "hh:mm:ss aa" ); // Change the pattern into 24 hour format DateFormat format = new SimpleDateFormat( "HH:mm:ss" ); Date time = null ; String output = "" ; // Converting the input String to Date time = dateFormat.parse(input); // Changing the format of date // and storing it in // String output = format.format(time); return output; } // Driver Code public static void main(String[] arg) throws ParseException { System.out.println(englishTime( "07:05:45 PM" )); } } |
19:05:45
Time Complexity: O(1)
Auxiliary Space: O(1)
This article is contributed by Rahul singh (Nit kkr). If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Please Login to comment...