C Program to Display Time: Find Hour, Minute & Second

  • Thread starter Thread starter mathrocks
  • Start date Start date
  • Tags Tags
    Program Time
Click For Summary

Discussion Overview

The discussion revolves around writing a C program to convert an arbitrary time represented in ticks into hours, minutes, and seconds. The context includes programming logic and mathematical operations necessary for the conversion.

Discussion Character

  • Homework-related, Mathematical reasoning

Main Points Raised

  • One participant expresses confusion about how to convert ticks into hours, minutes, and seconds, stating they understand how to find seconds but are unsure about the other units.
  • Another participant suggests using integer division and modulo operators to perform the conversions from ticks to time units.
  • A participant proposes a method for calculating seconds, minutes, and hours based on the total number of seconds derived from ticks, but seeks clarification on how to display these values correctly.
  • A later reply emphasizes the importance of using both the integer division and modulo operators to accurately determine the number of hours, minutes, and seconds from the total seconds calculated.

Areas of Agreement / Disagreement

Participants generally agree on the need to use integer division and modulo operations for the conversion, but there is some confusion regarding the correct implementation and display of the results.

Contextual Notes

There are unresolved aspects regarding the exact implementation details of the program and how to format the output for hours, minutes, and seconds.

mathrocks
Messages
105
Reaction score
0
Ok, I have to write a program that displays an arbitary time. I'm given 2 ticks every 1 second. So I'm suppose to use that to display the Hour, minute and seconds...im not sure where to start on how to create this. I know to find seconds I just do ticks/2, but for minutes and hours I'm confused...
 
Physics news on Phys.org
So your program is given an integer -- represented in ticks -- and you just need to convert ticks into seconds, minutes, hours, etc?

I'd suggest you look into using the / (integer division) and % (modulo) operators.

- Warren
 
chroot said:
So your program is given an integer -- represented in ticks -- and you just need to convert ticks into seconds, minutes, hours, etc?

I'd suggest you look into using the / (integer division) and % (modulo) operators.

- Warren
Yes, that's correct. So if I do the following
seconds=ticks*2
minutes=seconds/60
hours=minutes/60

how do I then use those values to display the correct hours, minutes?

for example I have 3602 seconds, that will be 60.0333333 minutes, and 1.00055556 hours
 
Last edited:
You're not understanding me. The best solution uses BOTH the % and / operators.

If you divide 3602 seconds by 3600 seconds (1 hour in seconds) with integer division, the answer will be 1. This is the number of hours.

If you then perform the same divison, but take the remainder (using the % operator), the remainder is 2.

Perform the integer division 2 / 60 (1 minute in seconds). The answer will be 0. This is the number of minutes.

Perform the same division, but keep the remainder (2 % 60), which will be 2. This is the number of seconds.

- Warren
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
2K
Replies
4
Views
4K
  • · Replies 8 ·
Replies
8
Views
5K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 9 ·
Replies
9
Views
3K
Replies
8
Views
2K
  • · Replies 5 ·
Replies
5
Views
1K
  • · Replies 8 ·
Replies
8
Views
5K
  • · Replies 2 ·
Replies
2
Views
1K
Replies
7
Views
3K