关于c语言中如何解决3n+1,溢出有关问题
来源:互联网 发布:淘宝宝贝怎么发布 编辑:程序博客网 时间:2024/05/16 13:44
3n+1问题是一个简单有趣而又没有解决的数学问题。这个问题是由L. Collatz在1937年提出的。克拉兹问题(Collatz problem)也被叫做hailstone问题、3n+1问题、Hasse算法问题、Kakutani算法问题、Thwaites猜想或者Ulam问题。
问题如下:
(1)输入一个正整数n;
(2)如果n=1则结束;
(3)如果n是奇数,则n变为3n+1,否则n变为n/2;
问题如下:
(1)输入一个正整数n;
(2)如果n=1则结束;
(3)如果n是奇数,则n变为3n+1,否则n变为n/2;
(4)转入第(2)步。
刘汝佳的书上就写着,但是输出987654321时候还是溢出拉。
/*#include<stdio.h>
int main()
{
int n;
int count=0;
scanf("%d",&n);
while(n>1)
{
if(n%2!=0)
{
n=3*n+1;
}
else
n=n/2;
count++;
printf("%d\n",n);
}
printf("%d\n",count);
}
*/
然后我是一个小菜鸟,但是我今天弄了半天居然弄出来了,嘿嘿,这个是我的成果,不知道对不对,分享给大家,在我用的软件Code Blocks上运行成功了!987654321也能出来正确结果,嘻嘻。
#include<stdio.h>
int main()
{
long long n;
int count=0;
scanf("%I64d",&n);
while(n>1)
{
if(n%2!=0)
n=(long long)3*n+1;
else
n=(long long)n/2;
printf("%I64d ",n);
count++;
}
printf("%d\n",count);
}
0 0
- 关于c语言中如何解决3n+1,溢出有关问题
- 关于3N+1溢出问题的解决
- 关于C语言的N皇后问题
- C语言 3n+1问题
- C语言中如何解决重复include的问题
- 解决tomcat内存溢出有关问题
- c语言中如何输出“/n”
- 关于C语言开大数组溢出的问题
- 山东理工大学ACM平台题答案关于C语言 1601 3n+1数链问题
- c语言中关于n个元素的栈和c1赋不上值的问题
- 关于3n+1问题的更加方便的解答(防止乘法的溢出)
- C 语言中有关常见的运算符问题
- 有关C语言中输入语句的问题
- C语言中有关外部函数调用的问题
- C语言中有关二维数组的指针问题
- 如何解决Hibernate 的N+1问题
- 3n+1问题 用c语言实现
- n位二进制中1和0的有关问题
- Matlab 线性代数(二)--向量组的线性相关性及方程组的特解
- 【C++基础】inline函数
- [LeetCode]67.Add Binary
- lua的数据结构 -- 链表
- Codeforces Good Bye 2013 ABCDE
- 关于c语言中如何解决3n+1,溢出有关问题
- MySQL Schema设计(三)利用Python操作Schema
- .Net在64位系统下连接Access数据库的问题The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machi
- Tiny6410 移植tslib1.4
- 全世界国家下拉框(附带SQL执行脚本)
- Eclipse配置Struts2问题:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
- Nodejs Native AddOn的编写
- [二分查找]Babelfish uva 10282
- php 简单生成 excel文件