Hailstone Sequence

一. Hailstone Sequence

Hailstone Sequence问题是一个著名的数学问题,至今没有证明其正确性,也没证明其是错误的,即任何一个正整数N,如果是偶数的话就除以2,如果是奇数的话就乘以3再加上1,最后这个数都会变为1。公式如下:


Hailstone Sequence_第1张图片
图片.png

二.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_第2张图片
图片.png

Hailstone Sequence_第3张图片
图片.png

Hailstone Sequence_第4张图片
图片.png

三.结论

因为无法验证HailStone Sequence是不是又穷的,所以它不能算一个算法.

你可能感兴趣的:(Hailstone Sequence)