【问题标题】:easiest way to generate base 3 numbers生成基数 3 数字的最简单方法
【发布时间】:2010-11-30 10:42:45
【问题描述】:

我正在尝试以编程方式解决数学问题。有一种方法可以生成以 3 为底的数字,这将很容易解决问题。您是否知道任何具有内置支持以处理大量非平凡基数的语言?如果您能指出一些可以帮助我生成以 3 为基数的序列的工具,那将同样很棒

【问题讨论】:

    标签: math programming-languages numbers


    【解决方案1】:

    数字本质上没有基数。 表示数字可以。通常,您通过使用仅包含“0”、“1”和“2”字符(可能还有小数点或负号或其他)的字符串来表达“数字的基数 3 表示”的概念。

    【讨论】:

      【解决方案2】:

      只需对数字重复 divmod 3 直到得到 0。相乘和相加即可恢复原始值。

      【讨论】:

        【解决方案3】:

        python 可以使用 int('012',3) 从基数 3 转换为 5,而 Python elegant inverse function of int(string,base) 则相反

        【讨论】:

          【解决方案4】:

          J 编程语言 (http://jsoftware.com/) 具有 Base 和 Antibase 作为主要功能。这些完全是数字,而不是字符操作。这些初选的词汇条目是 http://jsoftware.com/help/dictionary/d401.htm 和 http://jsoftware.com/help/dictionary/d402.htm

          使用这些可以很容易地处理 base-3 表示。这是一个示例程序定义,以及在控制台中的交互使用:

             base3=: 3& #. ^:_1
          
             base3 8
          2 2
             base3 i. 19
          0 0 0
          0 0 1
          0 0 2
          0 1 0
          0 1 1
          0 1 2
          0 2 0
          0 2 1
          0 2 2
          1 0 0
          1 0 1
          1 0 2
          1 1 0
          1 1 1
          1 1 2
          1 2 0
          1 2 1
          1 2 2
          2 0 0
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-02-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多