数学魔术《数字根九》的奥秘

介绍数字根9的数学魔术及其原理

数学魔术《数字根九》的奥秘
Photo by Crissy Jarvis / Unsplash

《数字根九》这个数学魔术是我在初中时买的一本书上学到的。这本书收藏了许多奇妙有趣的小游戏和故事,但遗憾的是,几年前弄丢了。学会数字根九后,我向初中的同学表演了几次,收获了不少称赞。大学乃至工作后,每当需要我上台表演节目时,我都会选择表演这个小游戏—唱歌跳舞对我而言实在是太难。

魔术的内容

这个魔术表演起来很简单,仅需要一位参与者。

首先表演者要求参与者随机想一串比较长的数字,例如 2024835016。然后再让参与者将这串数字打乱重新排列,假设重新排列为 8251603402—即使将 0 排在最前面也没问题。然后使用两数中较大的一个减去较小的一个,得到差值 6226768386。前面说到的这些数字,表演者是不需要知道的(保持魔术的神秘感)。

最后让参与者删掉差值里面一个非零数字(假设为 2),把剩下的数字(626768386)逐个报给表演者(可不按顺序)。表演者可根据这些剩下的数字猜出参与者删掉的是数字是几。

魔术的原理

这个数学魔术本质上是一个数字根问题。数字根又叫数根,是正整数的一个性质。计算方法是将正整数的各个位上的位数相加,如果相加得到的数字大于等于 10,则继续将结果的各位数相加,直到得到一个小于 10 的数字,即为原正整数的数字根。

在上面提到的魔术里,参与者将剩下的数字 626768386 报给表演者后。表演者计算这个数字的数字根为 7。然后用 9 减去 7 得到 2,就是参与者删掉的数字。如果 9 减去数字根得到的数字为 0,则参与者删掉的数字是 9。一个数字加上 9 后,它的数字根是不变的。

数字 x 的数字根 y 的计算公式为:

$$ y = mod(a-1, 9) + 1 $$

假设我们有一串数字 a,以及将 a 的各位数字打乱顺序后得到的数字 b。根据数字根的加和计算方法,a 和 b 的数字根是相同的,且 a - b 的数字根为 9,这就是魔术的数学原理。下面我们证明该原理的真实性。

要证明 a - b 的数字根为 9,我们需要证明:

$$ ((a - b) - 1) mod 9 + 1 = 9 $$

证明过程如下:

$$ ((a-b)-1)mod9+1 = ((a-b)mod9 - 1mod9)mod9 + 1 $$

$$ (a-b)mod9 = (amod9 -bmod9)mod9 = 0 $$

所以

$$ ((a-b)-1)mod9+1 = (0 - 1mod9)mod9 + 1 = (-1)mod9 + 1 = 9 $$

即需要证明的等式成立,魔术原理得证。

Read more

SwiftUI|监测视图更新及更新原因

SwiftUI|监测视图更新及更新原因

SwiftUI 的优势之一就是可以自动让 UI 和数据状态保持同步。频繁的视图更新也会带来一定的性能问题,尽管 Apple 已经让 SwiftUI 在更新时尽量只渲染视图树中必须重绘的部分,但我们还是需要知道某种可以监测视图更新以及触发其更新的原因的手段。这样我们才能在业务层面做一些针对性的性能优化。 我们可以通过在 View 的 body 视图构造器中插入一条 print 语句来监测到哪些视图的 body 正在被执行。这条语句还必须是一个赋值语句,不能是仅一个 print。因为 print 返回的是一个 Void ,而不是一个 View ,视图构造器会报错。 struct ContentView: View { var body: some View { let _ = print("ContentView Changed!") VStack { Image(systemName: "globe"

By Gray
天津一日行

天津一日行

五月份周末抽了一天去了天津转转。说来惭愧,在北京待了那么多年,我竟然一次都没有去过天津。 我们买的高铁票是北京南到天津站,游玩也是选的天津站附近的景点。当天天气不咋滴,上午阴天,下午就下起了雨。 出地铁后,映入眼帘的就是海河以及解放桥。 经过解放桥之后,再往前走一段路,就能看到路边有一个卖煎饼果子的小摊。我们当时刚下高铁,肚子正饿,所幸就买了一个吃。额外加了鸡蛋和辣条。都说天津的煎饼果子是一绝,这吃起来确实挺香👍。 穿过金街,一座看着很有时代感的建筑就映入眼帘——天津劝业场。刚看到它的名字时,我还以为是我念错了,怎么会有这么古怪的名字。后来一查还真是叫这个名字。 “劝业”二字也寄托着国人实业图强的希望。所以在天津劝业场开业之初,其经营宗旨以“劝业商场”四字的字头写出四句警言。即:劝吾胞兴,业精于勤,商务发达,场益增新。– 看天津系列:传统核心商圈金街 可能是因为当天是周六且非节假日,这条步行街上的行人并不多。游客们忙着拍照,本地人闲逛,和北京商业街的繁忙是不可同日而语的。天津是出了名的慢节奏,我倒是很喜欢这样的氛围。 做天津攻略时,我就看到有文章说天津美食有三绝:狗不理

By Gray