Java实例 – 编程验证一下“角谷猜想”

角谷猜想:角谷静夫是日本的一位著名学者。他提出了两条极简单的规则,可以对任何一个自然数进行变换,最终使它陷入“4-2-1”的死循环。
package com.java;

/**
 * @Auther: haoxuan
 * @Date: 18-12-14 18:55
 * @Blog: www.itianyu.cn
 * @Description:验证角谷猜想(Corner Valley conjecture)
 * “角谷猜想”:对任意的自然数,若是奇数,就对它乘以3加1;若是偶数就对它除以2;
 * 这样得到一个新数,再按上述奇数、偶数的计算规则进行计算,一直进行下去,最终将得到1。
 */

import java.util.Scanner;

public class Test1 {
    public static int getNum(int x) {
        if (x % 2 == 0) {
            x = x / 2;
            return x;
        } else {
            x = x * 3 + 1;
            return x;
        }
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入数字验证角谷猜想:");
        int in = sc.nextInt();
        while (in != 1) {
            in = getNum(in);
            if (in == 1) {
                break;
            }
            System.out.println(getNum(in));
        }


    }
}
© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容