一个8位数(加十进制)的计算器可以进行多少次运算?

缺口

我有这个模型:一个简单的8位显示计算器(无存储按钮,无平方根等)具有按钮(小数点不算作“数字”):10个按钮,表示0到9的整数,1个按钮表示点(小数点,因此可以保留小数,例如0.0000001到9999999.9),4个用于操作的按钮(+,-,/,*)和1个用于相等的按钮(=)。(“开/关”按钮不适用于此问题)

问题有两个:计算器屏幕上可以显示多少个数字?(并且会提供数学解释的解决方案)*并且如果我们必须在任意两个2对数之间进行所有4个基本运算,那么上述算出的运算数是多少?

感谢您的见解和帮助!

黑色的

对于此答案的第一部分,我们想知道计算器屏幕上可以显示多少个数字。

从一个简化的示例开始,然后从那里开始。让我们从一个1位数的显示开始。使用此计算器,您可以显示0到9之间的数字,并且可以在数字之前(使其成为小数)或在数字之后(使其成为整数)用小数点显示每个数字。可以制作多少个唯一数字?

.0,.1,.2,.3,.4,.5,.6,.7,.8,.9, 0。,1.,2.,3.,4.,5.,6.,7.,8.,9。

那有20个可能性,其中1个重复数使19个唯一数。让我们再次找到该结果,但是使用数学方法,我们可以按比例放大到更多位数。

首先找到所有可以进行的数字0 <= n <1。为了使数字适合该范围,小数点必须在第一个数字之前。我们仍在处理1位数字,因此有10种1种不同方式用大于或等于0但小于1的数字填充计算器。

接下来,找到所有可以进行的数字1 <= n <10。为此,您将小数点向右移动一位,因此现在它在第一位数字之后,并且您也不允许第一位数字为零(否则数字将小于1)。剩下9个唯一的数字。

[0 <= n <1] + [1 <= n <10] = 10 + 9 = 19

现在我们有了一个可扩展的系统。让我们用2位数字完成此操作,以便在转到8位数字之前了解它如何与多位数字一起使用。用2位数字表示0-99,小数点可以在三个不同的地方,这意味着我们要检查三个范围:0 <= n <1、1 <= n <10、10 <= n < 100 第一个集合的第一位可以为零,因为该集合中为零,但是每个其他集合的第一位不能为零,否则该数字将位于其下的集合中。因此,第一个集合有10 2个可能性,而其他每个集合都有9 * 10 1个可能性。我们可以这样概括一下:对于我们的计算器可以容纳的任何d位数字,集合0 <= n <1将有10 d种可能性,d-1种可能性

因此对于2位数:

[0 <= n <1] + [1 <= n <10] + [10 <= n <100] = 100 + 90 + 90 = 280

现在您可以看到一种模式在出现,可以将其概括化,以便为我们提供可以在带有d位数字的计算器上显示的唯一数字的总数

唯一的可显示数字= 10 d + d * 9 * 10 d-1

您可以使用简单的Python脚本来确认该数学运算,该脚本手动查找所有可以显示的唯一数字,打印找到的数量,然后还打印上面公式的结果。当位数更多时,它会陷入困境,但数字1到5应该足以显示公式有效。

for digits in range(1, 6):
    print('---%d Digits----' % digits)
    numbers = set()
    for d in range(digits + 1):
        numbers.update(i / 10**d for i in range(10**digits))
    print(len(set(numbers)))
    print(10**digits + digits * 9 * 10**(digits - 1))

结果:

--- 1个位数----
19
19
--- 2个位数----
280
280
--- 3个位数----
3700
3700
--- 4个位数----
46000
46000
--- 5 Digits- ---
550000
550000

这意味着带8位数字的计算器可以显示820,000,000个唯一数字。

对于此答案的第二部分,我们想知道是否必须在任何两个2对数之间进行所有4个基本运算,即上述计算的多少个?

我们可以在8.2亿个唯一数字之间形成几对数字?8.2亿平方。那就是672,400,000,000,000,000 = 672.4万亿。在这些数字对上可以使用四个不同的运算,因此将其乘以4,您可以在一个简单的8位计算器上得到2,689,600,000,000,000,000 = 2.6896十亿五千万个不同的可能运算。

编辑:

如果原始问题的目的是不允许小数点出现在第一个数字之前(小数点0 <= n <1必须以0开头),则可显示数字的公式将变为10 d + (d-1)* 9 * 10 d-1,这表示唯一可显示数字的数量为7.3亿而操作总数为2.1316亿五千万

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何制作一个8位二进制计算器

来自分类Dev

如何从8位带符号二进制数中得到一个负的十进制值?

来自分类Dev

十进制中每位数多少位

来自分类Dev

十进制js将三位数四舍五入[可能是一个错误?]

来自分类Dev

如何在python中定义一个包含1000位数字的十进制类?

来自分类Dev

如何在python中定义一个包含1000位数字的十进制类?

来自分类Dev

用python在二进制文件中写一个1024位长的十进制数

来自分类Dev

计算一行等于一个值多少次

来自分类Dev

用十六进制/十进制数进行计算

来自分类Dev

计算一个数字出现多少次,比前一个数字少一个

来自分类Dev

python如何计算一个单词连续重复多少次

来自分类Dev

如何编写一个消费者来计算它被调用了多少次?

来自分类Dev

如何计算一个循环执行了多少次?

来自分类Dev

如何编写一个消费者来计算它被调用了多少次?

来自分类Dev

计算一个值在Excel的列中出现多少次?

来自分类Dev

计算一个值在这个数组中出现多少次?

来自分类Dev

除法运算中,除法运算产生的结果与Python的最后一个十进制数字不同,结果与常规计算不同

来自分类Dev

带有十进制数和正常数的计算器正则表达式

来自分类Dev

一个PHP Nominatim API每秒可以响应多少次调用?

来自分类Dev

一个查询可以使用django objects.filter Q()多少次?

来自分类Dev

将计算出的十进制数转换为 8 位二进制数

来自分类Dev

二进制到十进制计算器,带错误报告

来自分类Dev

IP计算器。十进制到二进制

来自分类Dev

用几个十进制数绘制一个十六进制数

来自分类Dev

Java GUI计算器:创建一个小程序,对数字进行简单的加减运算

来自分类Dev

一个数字出现多少次

来自分类Dev

Python:将一位数字十进制转换为十六进制

来自分类Dev

用C编写一个程序,该程序将使用基数和n位数字,并输出由这些数字表示的十进制数

来自分类Dev

使用PostgreSQL在Rails控制台中计算一个简单的十进制

Related 相关文章

  1. 1

    如何制作一个8位二进制计算器

  2. 2

    如何从8位带符号二进制数中得到一个负的十进制值?

  3. 3

    十进制中每位数多少位

  4. 4

    十进制js将三位数四舍五入[可能是一个错误?]

  5. 5

    如何在python中定义一个包含1000位数字的十进制类?

  6. 6

    如何在python中定义一个包含1000位数字的十进制类?

  7. 7

    用python在二进制文件中写一个1024位长的十进制数

  8. 8

    计算一行等于一个值多少次

  9. 9

    用十六进制/十进制数进行计算

  10. 10

    计算一个数字出现多少次,比前一个数字少一个

  11. 11

    python如何计算一个单词连续重复多少次

  12. 12

    如何编写一个消费者来计算它被调用了多少次?

  13. 13

    如何计算一个循环执行了多少次?

  14. 14

    如何编写一个消费者来计算它被调用了多少次?

  15. 15

    计算一个值在Excel的列中出现多少次?

  16. 16

    计算一个值在这个数组中出现多少次?

  17. 17

    除法运算中,除法运算产生的结果与Python的最后一个十进制数字不同,结果与常规计算不同

  18. 18

    带有十进制数和正常数的计算器正则表达式

  19. 19

    一个PHP Nominatim API每秒可以响应多少次调用?

  20. 20

    一个查询可以使用django objects.filter Q()多少次?

  21. 21

    将计算出的十进制数转换为 8 位二进制数

  22. 22

    二进制到十进制计算器,带错误报告

  23. 23

    IP计算器。十进制到二进制

  24. 24

    用几个十进制数绘制一个十六进制数

  25. 25

    Java GUI计算器:创建一个小程序,对数字进行简单的加减运算

  26. 26

    一个数字出现多少次

  27. 27

    Python:将一位数字十进制转换为十六进制

  28. 28

    用C编写一个程序,该程序将使用基数和n位数字,并输出由这些数字表示的十进制数

  29. 29

    使用PostgreSQL在Rails控制台中计算一个简单的十进制

热门标签

归档