7-1 冰雹猜想
2023-12-21 16:10:00
冰雹猜想的内容是:任何一个大于1的整数n,按照n为偶数则除等2,n为奇数则乘3后再加1的规则不断变化,最终都可以变化为1。
例如,n等于20,变化过程为:20、10、5、16、8、4、2、1。编写程序,用户输入n,输出变化过程以及变化的次数。
输入格式:
请在这里写输入格式。例如:输入整数n。
输出格式:
请在这里描述输出格式。例如:输出猜想的过程及变化次数。
输入样例:
在这里给出一组输入。例如:
20
输出样例:
在这里给出相应的输出。例如:
20 10 5 16 8 4 2 1
count = 8
代码示例:?
#include<iostream>
using namespace std;
int main(){
int n;
int count =1;
cin>>n;
cout<<n;
while(n>1){
if(n%2==0){
n=n/2;
cout<<' '<<n;
count++;
}
else{
n=(n*3)+1;
cout<<' '<<n;
count++;
}
}
cout<<'\n'<<"count = "<<count;
}
代码思路:?
首先从用户输入获取一个正整数n,并将其直接输出。
然后定义一个变量count,用来记录变换的次数,初始值为1(1代表的就是第一个输出的n)。
接着,使用一个while循环,当n不等于1时,继续执行冰雹猜想的规则:
在循环中,判断n的奇偶性。
如果是偶数,就将n除以2;
如果是奇数,就将n乘以3再加1。
同时,将变换后的n输出,并将count加1,记录变换的次数。
最后当循环结束时,按照格式输出变换的总次数count。
文章来源:https://blog.csdn.net/IKUNIKUNIKUNikun/article/details/135129126
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!