原标题:10个有趣的算术游戏,让你立刻爱上数学!

数学到底哪里有趣了?数学之美究竟在哪里?

今天让我们一起读一读matrix67大神的这篇文章,里面包含作者精心选择的10个老少咸宜的算术问题,以定理、趣题甚至未解之谜等各种形式带领大家窥探数学世界的一角。不少问题背后都蕴含了深刻的数学知识,触及到数学的各个领域。 希望大家能够喜欢上数学这门充满乐趣的学科。

1

数字黑洞6174

任意选一个四位数(数字不能全相同),把所有数字从大到小排列,再把所有数字从小到大排列,用前者减去后者得到一个新的数。重复对新得到的数进行上述操作,7 步以内必然会得到 6174。

例如,选择四位数 6767:

7766 - 6677 = 1089

9810 - 0189 = 9621

9621 - 1269 = 8352

8532 - 2358 = 6174

7641 - 1467 = 6174

……

6174 这个“黑洞”就叫做卡普雷卡尔(Kaprekar)常数。对于三位数,也有一个数字黑洞——495。

2

3x + 1 问题

从任意一个正整数开始,重复对其进行下面的操作:如果这个数是偶数,把它除以 2 ;如果这个数是奇数,则把它扩大到原来的 3 倍后再加 1 。你会发现,序列最终总会变成 4, 2, 1, 4, 2, 1, … 的循环。

例如,所选的数是 67,根据上面的规则可以依次得到:

67, 202, 101, 304, 152, 76, 38, 19, 58, 29, 88, 44, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1, 4, 2, 1, ...

数学家们试了很多数,没有一个能逃脱“421 陷阱”。但是,是否对于 所有 的数,序列最终总会变成 4, 2, 1 循环呢?

这个问题可以说是一个“坑”——乍看之下,问题非常简单,突破口很多,于是数学家们纷纷往里面跳;殊不知进去容易出去难,不少数学家到死都没把这个问题搞出来。

已经中招的数学家不计其数,这可以从 3x + 1 问题的各种别名看出来: 3x + 1 问题又叫 Collatz 猜想、 Syracuse 问题、 Kakutani 问题、 Hasse 算法、 Ulam 问题等等。

后来,由于命名争议太大,干脆让谁都不沾光,直接叫做 3x + 1 问题算了。

直到现在,数学家们仍然没有证明,这个规律对于所有的数都成立。

3

特殊两位数乘法的速算

如果两个两位数的十位相同,个位数相加为 10,那么你可以立即说出这两个数的乘积。如果这两个数分别写作 AB 和 AC,那么它们的乘积的前两位就是 A 和 A + 1 的乘积,后两位就是 B 和 C 的乘积。

比如,47 和 43 的十位数相同,个位数之和为 10,因而它们乘积的前两位就是 4×(4 + 1)=20,后两位就是 7×3=21。也就是说,47×43=2021。

类似地,61×69=4209,86×84=7224,35×35=1225,等等。

这个速算方法背后的原因是,(10 x + y) (10 x + (10 - y)) = 100 x (x + 1) + y (10 - y) 对任意 x 和 y 都成立。

4

幻方中的幻“方”

一个“三阶幻方”是指把数字 1 到 9 填入 3×3 的方格,使得每一行、每一列和两条对角线的三个数之和正好都相同。

下图就是一个三阶幻方,每条直线上的三个数之和都等于 15。

大家或许都听说过幻方这玩意儿,但不知道幻方中的一些美妙的性质。例如,任意一个三阶幻方都满足,各行所组成的三位数的平方和,等于各行逆序所组成的三位数的平方和。对于上图中的三阶幻方,就有

816² + 357² + 492² = 618² + 753² + 294²

利用线性代数,我们可以证明这个结论。

5

天然形成的幻方

从 1/19 到 18/19 这 18 个分数的小数循环节长度都是 18。把这 18 个循环节排成一个 18×18 的数字阵,恰好构成一个幻方——每一行、每一列和两条对角线上的数字之和都是 81

(注:严格意义上说它不算幻方,因为方阵中有相同数字)。

6

196 算法

一个数正读反读都一样,我们就把它叫做“回文数”。随便选一个数,不断加上把它反过来写之后得到的数,直到得出一个回文数为止。例如,所选的数是 67,两步就可以得到一个回文数 484:

67 + 76 = 143

143 + 341 = 484

把 69 变成一个回文数则需要四步:

69 + 96 = 165

165 + 561 = 726

726 + 627 = 1353

1353 + 3531 = 4884

89 的“回文数之路”则特别长,要到第 24 步才会得到第一个回文数,8813200023188。

大家或许会想,不断地“一正一反相加”,最后总能得到一个回文数,这当然不足为奇了。事实情况也确实是这样——对于 几乎 所有的数,按照规则不断加下去,迟早会出现回文数。

不过,196 却是一个相当引人注目的例外。数学家们已经用计算机算到了 3 亿多位数,都没有产生过一次回文数。从 196 出发,究竟能否加出回文数来?196 究竟特殊在哪儿?这至今仍是个谜。

7

Farey 序列

选取一个正整数 n。把所有分母不超过 n 的 最简 分数找出来,从小到大排序。这个分数序列就叫做 Farey 序列。例如,下面展示的就是 n = 7 时的 Farey 序列。

定理:在 Farey 序列中,对于任意两个相邻分数,先算出前者的分母乘以后者的分子,再算出前者的分子乘以后者的分母,则这两个乘积一定正好相差1!

这个定理有从数论到图论的各种证明。甚至有一种证明方法巧妙地借助 Pick 定理,把它转换为了一个不证自明的几何问题!

8

唯一的解

经典数字谜题:用 1 到 9 组成一个九位数,使得这个数的第一位能被 1 整除,前两位组成的两位数能被 2 整除,前三位组成的三位数能被 3 整除,以此类推,一直到整个九位数能被 9 整除。

没错,真的有这样猛的数:381654729。其中 3 能被 1 整除,38 能被 2 整除,381 能被 3 整除,一直到整个数能被 9 整除。这个数既可以用整除的性质一步步推出来,也能利用计算机编程找到。

另一个有趣的事实是,在所有由 1 到 9 所组成的 362880 个不同的九位数中,381654729 是唯一一个满足要求的数!

9

数在变,数字不变

123456789的两倍是 246913578,正好又是一个由 1 到 9 组成的数字。

246913578的两倍是493827156,正好又是一个由 1 到 9 组成的数字。

把 493827156再翻一倍,987654312,依旧恰好由数字 1 到 9 组成的。

把 987654312 再翻一倍的话,将会得到一个 10 位数 1975308624,它里面仍然没有重复数字,恰好由 0 到 9 这 10 个数字组成。

再把 1975308624 翻一倍,这个数将变成 3950617248,依旧是由 0 到 9 组成的。

不过,这个规律却并不会一直持续下去。继续把 3950617248 翻一倍将会得到 7901234496,第一次出现了例外。

10

三个神奇的分数

1/49化成小数后等于0.0204081632 …,把小数点后的数字两位两位断开,前五个数依次是 2、4、8、16、32,每个数正好都是前一个数的两倍。

100/9899等于

0.01010203050813213455 … ,两位两位断开后,每一个数正好都是前两个数之和(也即 Fibonacci 数列)。

而 100/9801 则等于

0.0102030405060708091011121314151617181920212223 …

利用组合数学中的“生成函数”可以完美地解释这些现象的产生原因。

声明:本公众号尊重原创,素材来源于网络,好的内容值得分享,如有侵权请联系删除。

责任编辑:

算术游戏C语言,10个有趣的算术游戏,让你立刻爱上数学!相关推荐

  1. c语言程序设计黑白棋游戏,C语言课程设计_黑白棋游戏

    C语言课程设计_黑白棋游戏 C语言课程设计_黑白棋游戏 #include "graphics.h" /*图形系统头文件*/ #define LEFT 0x4b00 /*光标左键值* ...

  2. c语言课题设计题目猜数字游戏,C语言课题设计报告(猜数字游戏)文档.doc

    C语言课题设计报告(猜数字游戏)文档 课 程 设 计 报 告 课程名称 C 语言课程设计 课题名称 猜数字游戏 专 业 电气工程及其自动化 班 级 1183 学 号 13 姓 名 鲁响 指导教师 王颖 ...

  3. 让你立刻爱上数学的8个算术游戏

    文科背景的朋友们经常会问我一个问题:数学到底哪里有趣了,数学之美又在哪里?此时,我通常会讲一些简单而又深刻的算术游戏,让每个只会算术的人都能或多或少地体会到一些数学的美妙.如果你从小就被数学考试折磨, ...

  4. c语言程序设计中三子棋游戏,C语言实现简易版三子棋游戏

    本文实例为大家共享了C语言实现三子棋游戏的详细代码,供大家参考,详细内容如下 什么是多文件? 多数大型的工程的头文件和源文件非常多,我们也不可能把所有的代码都写在同一个文件里,这样也不方便代码的阅读与 ...

  5. 出圈游戏c语言用指针求,出圈游戏程序设计.doc

    出圈游戏程序设计.doc 存档资料 成绩 华东交通大学课 程 设 计 报 告 书所属课程名称C程序设计题 目出圈游戏的程序设计院 (系)信息工程学院班 级通信一班学号20140610080126学生姓 ...

  6. python编写格斗游戏_C语言实现的开源 2D 格斗游戏: Punch Kick

    <Punch & Kick>是作者在大学期间用C语言开发的2D格斗游戏,其开源主要是面向开发者及编程爱好者,这款游戏并不适合发烧级玩家.审美帝. 下面是作者自己对这个游戏的介绍: ...

  7. 酷跑游戏C语言,毕业设计(论文)-跑酷游戏设计(源程序).doc

    重庆理工大学毕业设计论文跑酷游戏 毕业设计(论文) 题目 跑酷游戏 二级学院 计算机科学与工程 专 业 软件工程 班 级 学生姓名 学号 指导教师 职称 时 间 2014.5.20 目 录 TOC \ ...

  8. 井字棋游戏 c语言实现,井字棋小游戏(C语言)

    1 #include 2 #include 3 #include 4 #include 5 #include 6 7 void drawBoard(char *board) //绘制棋盘 8 {9 p ...

  9. 杀人游戏 c语言,趣味游戏(1)——杀人游戏

    杀人游戏 现在已知有一队人 ,他们围成一圈并将他们进行从小到大编号.然后设置一个死亡号码,凡是报道3的人都死亡 后面的人继续数数, 输出最后一个活着的人的编号. 解题思路: 其实这是一道比较典型的约瑟 ...

最新文章

  1. qt creator报错处理积累
  2. uniapph5授权成功后返回上一页_被成功验证过的的7条选品思路(收藏)
  3. jQuery easyUI--选项卡右键菜单
  4. mysql主机咋填_mysql数据库主机填什么
  5. SpringMvc接口中转设计(策略+模板方法)
  6. Internet Explorer 6 中的 CSS 增强功能
  7. js 刷新页面window.location.reload();
  8. mysql 用户权限设置【转】
  9. 保存一个 Python 对象,之后使用时直接读取
  10. 位结构体+大小端模式
  11. C++的RTTI基本原理
  12. ROS Kinetic 安装指南
  13. C/C++语言函数之strlen函数用法
  14. 关于通过请求获取的验证码不正确的解决的破解方法
  15. linux下删原来的盘符命令,linux中创建磁盘分区 删除分区
  16. linux adb 驱动 home,Ubuntu下adb驱动问题
  17. Educoder-练习-Java循环综合练习四之日历打印
  18. 自然人股东分红必须要缴纳20%个税吗?有三种真不用
  19. MYSQL 查询某个月有多少天数?
  20. 计算机的组成以及其功能

热门文章

  1. 国服Cytus2解密与注入
  2. 自动将BAT文件转换为EXE
  3. c语言图形程序设计 pdf,Visual C++图形程序设计 PDF扫描版[29MB]
  4. [小黄书管理平台]登录服务的实现
  5. 计算机网络虚电路数据报,计算机网络——网络层-虚电路和数据报网络
  6. 基于ENVI5.3的Landsat条带去除、辐射定标、大气校正
  7. data填补 envi no,ENVI正射校正、统计大气校正、地形起伏度与影像清晰度计算
  8. 组策略(GPO)错误:没有应用 (未知原因)
  9. BUUCTF-WriteUp
  10. 网页文档输出、对话框