基数表示



我最近开始学习逻辑设计,有一些东西我不太理解。

假设你得到一个以秒为单位的值(比如3000000),并被要求转换为周、天、小时、分钟和秒(混合基数)。你将如何转换它?我试着先用60除以这个值(持续数秒),用商(?)作为第一个数,然后再用60除以余数(这次是分钟数),依此类推每个基数(60s、60m、24h、7d、52w)。你应该这样解决吗?

我还想知道如何找到可以由x向量(例如4)和基数(例如6)表示的最大值。我认为这将是每个向量位置(216,36,6,1)的值的总和,因此为259。但我认为这是不对的。

我试着在网上找到任何帮助,但找不到任何简单的解释。

对于您的第一个问题(秒数N=3000000):

  • 秒=N mod 60
  • 分钟=(N-秒)/60
  • 小时=分钟/60
  • 天=小时/24
  • 周=天/7

其中/是整数除法(使用截断而非舍入)。

对于第二个问题,你必须将每个地方的最大值乘以它的大小。这同样适用于任何数字系统,例如十进制的9999:最大值不是9+9+9+9=36,而是9*1000+9*10+9*1。

最新更新