第一篇:考拉茲猜想C語言代碼-九院黃偉
考拉茲猜想
考拉茲猜想,又稱為3n+1猜想、角谷猜想、哈塞猜想、烏拉姆猜想或敘拉古猜想,是由日本數(shù)學家角谷靜夫發(fā)現(xiàn),是指對於每一個正整數(shù),如果它是奇數(shù),則對它乘3再加1,如果它是偶數(shù),則對它除以2,如此循環(huán),最終都能夠得到1。
#include
main()
{
int n;//存儲該自然數(shù)
int i;
printf(“請輸入一個自然數(shù):”);
scanf(“%d”,&n);
for(i=1;;i++){
if(n==1){
printf(“第%d步:n=%dn”,i,n);break;
}else if(n%2==0){
printf(“第%d步:n=%d÷2=%dn”,i,n,n/2);
n=n/2;
}else if(n%2==1){
printf(“第%d步:n=%d×3+1=%dn”,i,n,n*3+1);
n=n*3+1;
}
}
}
第二篇:6174猜想C語言代碼-九院黃偉
6174猜想
1955年,卡普耶卡(D.R.Kaprekar)研究了對四位數(shù)的一種變換:任給出四位數(shù)k0,用它的四個數(shù)字由大到小重新排列成一個四位數(shù)m,再減去它的反序數(shù)rev(m),得出數(shù)k1=m-rev(m),然后,繼續(xù)對k1重復上述變換,得數(shù)k2.如此進行下去,卡普耶卡發(fā)現(xiàn),無論k0是多大的四位數(shù),只要四個數(shù)字不全相同,最多進行7次上述變換,就會出現(xiàn)四位數(shù)6174.#include
main()
{
int s,a, b, c, d;
int t=0,x;
int m,n;
printf(“請輸入一個四位每位不全相同的數(shù):”);
scanf(“%d”, &s);
a=s/1000;
b=s%1000/100;
c=s%100/10;
d=s%10;
for(x=0;;x++){
if(x==0){
if(a==b&&a==c&&a==d&&b==c&&b==d&&c==d){
printf(“輸入的四位不合法!n”);break;
}
}
a=s/1000;b=s%1000/100;c=s%100/10;d=s%10;
if(a
if(b if(c if(a if(b if(a m=a*1000+b*100+c*10+d; n=a+b*10+c*100+d*1000; if(m-n==6174){ printf(“s=%d-%d=%dn”, m, n, m-n); printf(“結(jié)束!n”);break; }else{ s=m-n; printf(“s=%d-%d=%dn”, m, n, s); }}}