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> |
Output
19:05:45
Time Complexity: O(1)
Auxiliary Space: O(1)
Method 2: Using java Date
C++
#include <iostream> #include <ctime> using namespace std;
string englishTime(string input) { // Format of the date defined in the input String
struct tm tm ;
strptime(input.c_str(), "%I:%M:%S %p" , & tm );
// Changing the format of date and storing it in string
char output[9];
strftime (output, sizeof (output), "%H:%M:%S" , & tm );
return string(output);
} // Driver code int main() {
cout << englishTime( "07:05:45 PM" ) << endl;
return 0;
} |
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" ));
}
} |
Python3
# Python program for the above approach import datetime
def englishTime( input ):
# Format of the date defined in the input String
dateFormat = datetime.datetime.strptime( input , "%I:%M:%S %p" )
# Change the pattern into 24 hour format
format = datetime.datetime.strftime(dateFormat, "%H:%M:%S" )
return format
# Driver Code print (englishTime( "07:05:45 PM" ))
|
C#
using System;
using System.Globalization;
class GFG {
public static string englishTime( string input)
{
// Format of the date defined in the input String
DateTime time;
CultureInfo provider = CultureInfo.InvariantCulture;
DateTime.TryParseExact(input, "hh:mm:ss tt" , provider, DateTimeStyles.None, out time);
// Change the pattern into 24 hour format
DateTimeFormatInfo dtfi = CultureInfo.InvariantCulture.DateTimeFormat;
string output = time.ToString( "HH:mm:ss" , dtfi);
return output;
}
// Driver Code
static void Main( string [] args) {
Console.WriteLine(englishTime( "07:05:45 PM" ));
}
} |
Javascript
// Function to convert 12 hour time format to 24 hour time format function englishTime(input) {
// Create a Date object with the input time string
let date = new Date( "1970-01-01 " + input);
// Format the date object into a 24 hour time string
let format = date.toLocaleTimeString([], { hour12: false });
return format;
} // Driver Code console.log(englishTime( "07:05:45 PM" ));
|
Output
19:05:45
Time Complexity: O(1)
Auxiliary Space: O(1)