时间转换问题——算法

时间转换

问题描述

读取一个整数值,它是工厂中某个事件的持续时间(以秒为单位),请你将其转换为小时:分钟:秒来表示。

输入格式

输入一个整数N。

输出格式

输出转换后的时间表示,格式为“hours:minutes:seconds”。

数据范围

1 N 1000000 1≤N≤1000000

输入样例:

556

输出样例:

0:9:16

问题分析

首先要知道秒与小时、分钟的换算

1h=60min=3600s

那么,在判断小时的时候,首先考虑有多少个3600,判断分钟时候,考虑有多少个60,剩下的就是秒

代码实现

#include <iostream>
#include <bits/stdc++.h>
using namespace std;  

int main(){
	//输出转换后的时间表示,格式为“hours:minutes:seconds”
	long t;
	int h,m;
	cin>>t;
	h=t/3600;//小时数 
	t=t%3600;
	m=t/60;//分钟数 
	t=t%60;//秒数
	cout<<h<<":"<<m<<":"<<t;
	
	return 0;
}

运行结果

4134
1:8:54
--------------------------------

总结

这个问题与钞票问题类似,同样是将一个数逐步分解,从最大的可用数找起,直至最小。

发布了59 篇原创文章 · 获赞 5 · 访问量 5060

猜你喜欢

转载自blog.csdn.net/qq_38496329/article/details/104076782
今日推荐