一. Hailstone Sequence
Hailstone Sequence问题是一个著名的数学问题,至今没有证明其正确性,也没证明其是错误的,即任何一个正整数N,如果是偶数的话就除以2,如果是奇数的话就乘以3再加上1,最后这个数都会变为1。公式如下:
二.OC代码实现和运行结果
- (void)hailStone:(NSInteger)num
{
NSInteger sum = 0;
NSInteger numCopy = num;
while (num > 1)
{
num = num%2==0 ? num/2 : num*3+1;
sum += 1;
NSLog(@"%ld",num);
}
NSLog(@"输入%ld循环了%ld次",numCopy,sum);
}
三.结论
因为无法验证HailStone Sequence是不是又穷的,所以它不能算一个算法.