# C++ program to convert time from 12 hour to 24 hour format

Given a time in 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
```

## Recommended: Please solve it on “PRACTICE” first, before moving on to the solution.

```// 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;
}
```

Output:

```19:05:45
```

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 contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

# GATE CS Corner    Company Wise Coding Practice

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.
1.3 Average Difficulty : 1.3/5.0
Based on 3 vote(s)