问题描述:
解题思路:
1.定义两个变量,n正整数,count计数器;
2.对n进行奇数偶数判断;
3.如果是奇数,则n = 3*n+1,后n对半砍,也就是n/2;计数器+1,进行下一次判断,直至n=1为止;
4.如果是偶数,n=n/2;计数器+1,进行下一次判断,直至n=1;
5.输出结果。
解题代码:
#include <iostream>
using namespace std;
int main()
{
int n,count = 0;
cin >> n;
while(1 != n)
{
if(n % 2 == 0)
n = n / 2;
else
n =(3*n + 1) / 2;
++count;
}
cout << count;
}
-----------------------------------------------知识点仅针对个人盲点----------------------------------------------------
知识点:
namespace
释义:命名空间,解决命名冲突
用法:
namespace A { int a = 100; }
1、命名空间的定义( 不能在 函数内 定义命名空间)
2、使用命名空间的成员 最安全的方式 命名空间名::成员名
3、using namespace 命名空间名;使用整个命名空间 (重要)using namespace A;
4、单独 使用命名空间中的具体成员:using 命名空间名::成员名;
using A::a;
5、说明一下main中的std
#include <iostream> //使用标准的命名空间std //std中所有成员名 可以直接使用 //cout endl cin都是命名空间std的成员 using namespace std; int main(int argc, char *argv[]) { std::cout << "Hello World!" << std::endl; cout << "Hello World!" << endl; return 0; }
注:知识点部分摘抄自这篇博客,讲的非常详细,可以去博主博客中溜达溜达~~C++命名空间 namespace的详细讲解_看见代码就想敲的博客-CSDN博客_c++ namespace
如有侵权,请联系我删除,谢谢~