运用Mathematica进行可视化操作的“3n%1”问题 mathematica11.3怎么用
大家好,本网站为大家提供优质的、全新的游戏攻略,援助大家更愉悦地、更顺手地玩游戏,走过路过不要错过奥。
1. 使用EvenQ函数裁定数字是否为偶数
在Mathematica中,使用EvenQ函数可以裁定一个数字是否为偶数。需要注意的是,Mathematica认为12.0不是偶数。
2. 执行“3n%1”规则操作
我们以121为第一个元素,使用NestWhileList函数执行“3n%1”规则的操作。代码如下:
NestWhileList[If[EvenQ[], /2, 3 1] , 121, ! 1 ]
3. 实现人机互动的代码
我们可以使用Manipulate函数实现人机互动的可视化操作。代码如下:
Manipulate[
Pane[
[Framed[Style[, Background->Orange, "Label"], Background->Blue]/@
NestWhileList[If[EvenQ[], /2, 3 1] , i, ! 1 ], "->"],
{500, 420}, Alignment->{Left, Center}],
{i, 50, Style["开始的数",@Green,Bold,30]}, 1,150,1]
4. 列举30到40之间整数的“3n%1”过程
我们可以使用Table函数列举30到40之间的整数经过“3n%1”规则的过程。代码如下:
Table[NestWhileList[If[EvenQ[], /2, 3 1] , i, ! 1 ], {i, 30, 40}]
5. 观察前150个数字经过多少步得到1
我们可以使用Table函数观察前150个数字经过多少步会得到1。代码如下:
Table[Length[NestWhileList[If[EvenQ[], /2, 3 1] , i, ! 1 ]], {i, 1, 150}]
6. 画出对应的点线图
我们可以使用ListLinePlot函数画出前150个数字与相应步骤的点线图。代码如下:
ListLinePlot[Table[Length[NestWhileList[If[EvenQ[], /2, 3 1] , i, ! 1 ]], {i, 1, 150}]]
7. 画出前10000个数字与相应步骤的点阵图,并求出最大的步骤
我们可以使用ListPlot函数画出前10000个数字与相应步骤的点阵图,并通过Max函数求出最大的步骤。代码如下:
ListPlot[Table[Length[NestWhileList[If[EvenQ[], /2, 3 1] , i, ! 1 ]], {i, 1, 10000}]]
Table[Length[NestWhileList[If[EvenQ[], /2, 3 1] , i, ! 1 ]], {i, 1, 10000}] // Max
通过以上代码,我们可以发现最大的步骤是262。你能否找出是哪个数字的步骤最大呢?
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将即刻删除。
大家注意,记起持续关注本游戏攻略网站,您的支持是我们最大的动力奥,我们会努力提供全网新的游戏攻略教程,加油。
本创作内容,未授权勿转载,必究权责。
免责说明:本文代表的是网站编辑的观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经确认,因此对本文以及其中全部或者部份内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。