Open In App

C Program to Display time in Different Country Format

Last Updated : 27 Nov, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will see the time of the different countries. The calculation is based relative to Indian Time. Simple conversion is done between hours, minutes, and seconds. the code includes the 24hr format

The below code considers the following countries’ examples:

  1. Singapore.
  2. Newyork.
  3. China.
  4. Japan.
  5. Saudi Arabia.

In the below code, all calculations are done after converting time into seconds. Below is the C program to display time in the different country formats:

C




// C program to display time
// in the different country formats
#include <stdio.h>
#include <string.h>
  
void singapore();
void newyork();
void china();
void japan();
void saudiarabia();
long int h, m, s, n, s1, s2, s3, t, 
         x, sec, p, hrs, min, r, q;
  
// Driver code
void main()
{
  printf("\n Enter Time in hours minutes and seconds "
         "respectively: ");
  scanf("%ld%ld%ld", &h, &m, &s);
  
  if (h > 24 || m > 60 || s > 60) 
  {
    printf("\n oops!!! U have Entered an invalid "
               "format of time");
  }
  else 
  {
    s1 = h * 3600;
    s2 = m * 60;
    s3 = s;
      
    // convert total time in seconds
    t = s1 + s2 + s3; 
    printf("\n Time in INDIA is %ld:%ld:%ld i.e. , %ld "
           "hours %ld minutes %ld seconds",
            h, m, s, h, m, s);
  }
  
  printf("\n");
  singapore();
  printf("\n");
  newyork();
  printf("\n");
  china();
  printf("\n");
  japan();
  printf("\n");
  saudiarabia();
}
  
void singapore()
{
  // Singapore time is 2:30 hrs
  // ahead of India
  // 2:30 hrs = 9000 seconds
  r = t + 9000; 
    
  // 24hrs = 86400 seconds
  if (r > 86400) 
  {
    q = r - 86400;
    sec = q % 60;
    p = q / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in SINGAPORE is %ld:%ld:%ld i.e., "
           "%ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else if (r < 86400 && r > 0) 
  {
    sec = r % 60;
    p = r / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in SINGAPORE is %ld:%ld:%ld i.e., "
           "%ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else 
  {
    x = 86400 + r;
    sec = x % 60;
    p = x / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in SINGAPORE is %ld:%ld:%ld i.e., "
           "%ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
}
  
void newyork()
{
  // Newyork time is 10:30 hrs behind of India
  // 10:30hrs = 37800 seconds
  r = t - 37800; 
  if (r > 86400) 
  {
    q = r - 86400;
    sec = q % 60;
    p = q / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in NEWYORK is %ld:%ld:%ld i.e., "
           "%ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else if (r < 86400 && r > 0) 
  {
    sec = r % 60;
    p = r / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in NEWYORK is %ld:%ld:%ld i.e., "
           "%ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else 
  {
    x = 86400 + r;
    sec = x % 60;
    p = x / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in NEWYORK is %ld:%ld:%ld i.e., "
           "%ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
}
  
void china()
{
  // China time is 2:30 hrs ahead of India
  // 2:30hrs = 9000 seconds
  r = t + 9000; 
  if (r > 86400) 
  {
    q = r - 86400;
    sec = q % 60;
    p = q / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in CHINA is %ld:%ld:%ld i.e., %ld "
           "hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else if (r < 86400 && r > 0) 
  {
    sec = r % 60;
    p = r / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in CHINA is %ld:%ld:%ld i.e., %ld "
           "hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else 
  {
    x = 86400 + r;
    sec = x % 60;
    p = x / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in CHINA is %ld:%ld:%ld i.e., %ld "
           "hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
}
  
void japan()
{
  // Japan time is 3:30 hrs ahead of India
  // 3:30hrs = 12600 seconds
  r = t + 12600; 
  if (r > 86400) 
  {
    q = r - 86400;
    sec = q % 60;
    p = q / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in JAPAN is %ld:%ld:%ld i.e., %ld "
           "hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else if (r < 86400 && r > 0) 
  {
    sec = r % 60;
    p = r / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in JAPAN is %ld:%ld:%ld i.e., %ld "
           "hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else 
  {
    x = 86400 + r;
    sec = x % 60;
    p = x / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in JAPAN is %ld:%ld:%ld i.e., %ld "
           "hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
}
  
void saudiarabia()
{
  // Saudiarabia time is 2:30 hrs behind of India
  // 2:30hrs = 9000 seconds
  r = t - 9000; 
  if (r > 86400) 
  {
    q = r - 86400;
    sec = q % 60;
    p = q / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in SAUDIARABIA is %ld:%ld:%ld "
           "i.e., %ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else if (r < 86400 && r > 0) 
  {
    sec = r % 60;
    p = r / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in SAUDIARABIA is %ld:%ld:%ld "
           "i.e., %ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
  else 
  {
    x = 86400 + r;
    sec = x % 60;
    p = x / 60;
    hrs = p / 60;
    min = p % 60;
    printf("\n Time in SAUDIARABIA is %ld:%ld:%ld "
           "i.e., %ld hours %ld minutes %ld seconds",
            hrs, min, sec, hrs, min, sec);
  }
}


Output:

C Program to Display time in Different Country Format

 



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads