计算机科学中的问题往往被归纳为某一类问题(如NP问题,无法解决问题,递归等)。在这道问题中你将分析一种算法,它对所有可能的输入结果是未知的。 考虑以下算法: 1. 输入n 2. 输出n 3. 如果n=1然后停止 4. 如果n是奇数: n <-- n*3+1 5. 其他的情况: n <-- n/2 6. 转向 2例如:对于输入22,输出...
因为奇数*奇数=奇数,所以经过n=3*n+1的计算后,n的值必然是偶数,并且下次循环必然做运算n/=2,所以这里可以合并这两步,也就是n为奇数的情况下做运算n=floor(1.5*n+0.5),由于double值的误差问题,我们可以用n=floor(1.5*n+1)(floor函数接收double类型的参数,返回不大于给定参数的最大整形数,返回值类型为doubl...
1 1.打开Excel 2016,新建一个新的工作表,在A1 单元格内任意输入一个整数,如35。 如下图所示:2 2. 在A2 单元格输入“=IF(A1/2=INT(A1/2),A1/2,(3*A1+1)/2)”。3 将以上制作的文件以“如何用Excel求解“3N +1”问题.xlsx”保存。以上文件若将填充句柄横向填充,可一次对多个任意整数验证“3N...
【题目】考拉兹猜想又名3n 1猜想,是指对于每一个正整数,如果它是奇数,则对它乘3再加1;如果它是偶数,则对它除以2.如此循环,最终都能得到1.阅读如图所示的程序框图,运行相应程序,输出的结果i=( ) 【答案】D 【解析】解:当a=4时,不满足
3n+1问题起源于20世纪50年代,又称为Syracuse猜想,角谷猜想,Collatz问题,Hasse算法问题,Ulamw问题,Thwaites猜想等等,目前有人验证,猜想仍然成立。 再做进一步分析之前,我们做一些简单的分析.对n=有 对为奇数有 因此,我们只需要对奇数进行分析。另一个有意义的观察是:如果对每个n, 数列中有某一项小于...
卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证...
我们沿用康威对Collatz函数的自然推广定义,来找找3n+1类似的问题反例,具体举例来说,我们定义下列不同的迭代函数,对3n+1函数进行推广,来观察更广义的情形,来获得数值实验的“启发”。 其中f₂(x)就是我们熟知的3n+1函数,3n+1猜想就是说,f₂(x)对所有自然数x,迭代结果都会遇到1。
例57 3n+1问题 问题描述 考虑如下的序列生成算法:从整数 n 开始,如果 n 是偶数,把它除以 2;如果 n 是奇数,把它乘 3 加1。用新得到的值重复上述步骤,直到 n = 1 时停止。例如,n = 22 时该算法生成的序列是:22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1。 人们猜想(没有得到证明)对于...
3n+1问题(南阳oj) 3n+1问题 1000 ms | 内存限制: 65535 0 对于任意大于一的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半,经过若干次这样的变换,一定会使n变为1.求输出变换的次数,注 要求次数要对3取余;例如3->10->5->16->8->4->2->1 变换了7次,对3取余的1; n<=109...
3n+1问题 题目: 猜想:对于任意大于1的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半。 经过若干次这样的变换,一定会使n变为1。例如,3->10->5->16->8->4->2->1。 输入n,输出变换的次数。n<=10^9。 样例输入: 3 样例输出: 7