将余数保存在变量中
我想如何将余数保存在变量中。将余数保存在变量中
例:计算数秒到数小时:
用户输入:524000
(秒)
答案:14H 33M 20S
我会做这样的事情:
console.writeline("Enter seconds")
int seconds = int.parse(console.readline());
int hours = seconds/3600;
console.writeline("Seconds calculated in hours = {0}",hours);
其余的是2000秒除以60 = 33和余下的20个。
但是我怎样才能将这个余数保存在另一个变量?
使用模运算符(%),但对于这个问题使用TimeSpan会不会更容易?
TimeSpan span = TimeSpan.FromSeconds(5400);
然后当然会显示答案。 (提示:的String.Format())
+1。这是一个更好的方法来做到这一点。 – 2013-04-10 09:04:14
我的主要目标不是做到最有效的方式,而是锻炼。但是,谢谢你,你的答案都尝试过,它的工作。 – user2022298 2013-04-10 15:56:51
@ user2022298啊,我也提供了原始问题的答案,但也展示了最有效的方式,所以我希望它可以帮助你:) – joell 2013-04-10 16:09:45
除了TimeSpan.FromSeconds
和%
操作,您可以使用Math.DivRem
方法:
int hours = Math.DivRem(seconds, 3600, out seconds);
int minutes = Math.DivRem(seconds, 60, out seconds);
使用模(http://www.dotnetperls.com/modulo ),如:秒%3600. – 2013-04-10 08:54:49