❶ c語言角谷定理求次數
下面的程序先從鍵盤上給我一個整數X。然後如果它是奇數就乘以3+1。否則就除以2。並且同時記錄次數,當X的值變為E的時候,停止循環輸出處理的次數。
#include <stdio.h>
int main()
{ int n=0,x;
scanf("%d",&x);
while(x!=1)
{if(x%2)x=3*x+1;
else x/=2;
n++;
}
printf("%d\n",n);
return 0;
}
❷ c++編程驗證「角谷猜想」
#include<stdio.h>
int
main()
{
int
n,count=0;
printf("Please
enter
number:");
scanf("%d",&n);
/*輸入任一整數*/
do{
if(n%2)
{
n=n*3+1;
/*若為奇數,n乘3加1*/
printf("[%d]:%d*3+1=%d\n",++count,(n-1)/3,n);
}
else
{
n/=2;
/*若為偶數n除以2*/
printf("[%d]:
%d/2=%d\n",++count,2*n,n);
}
}while(n!=1);
/*n不等於1則繼續以上過程*/
}
以上是c語言的,再給你弄個c++的
#include<iostream>
using
namespace
std;
int
main()
{
int
n,count=0;
cout<<"Please
enter
number:";
cin>>n;
/*輸入任一整數*/
do{
if(n%2)
{
n=n*3+1;
/*若為奇數,n乘3加1*/
++count;
cout<<"["<<count<<"]:"<<(n-1)/3<<"*3+1="<<n<<endl;
}
else
{
n/=2;
/*若為偶數n除以2*/
++count;
cout<<"["<<count<<"]:"<<2*n<<"/2="<<n<<endl;
}
}while(n!=1);
/*n不等於1則繼續以上過程*/
}
❸ C語言作業,角谷問題
#include <stdio.h>
int main()
{int x,x1;
scanf("%d",&x);
while(x!=1)
{if(x%2)
{x1=3*x1+1;
printf("%d*3+1=%d ",x,x1);
}
else
{x1=x/2;
printf("%d/2=%d ",x,x1);
}
x=x1;
}
return 0;
}
❹ C語言 角谷猜想 要求驗證角谷猜想,從鍵盤上輸入一個自然數n,輸出所有n到1經歷的所有數。
沒用過C語言 用PYTHON給你寫一個 你可以照著改改
num=6
print(num,end='')
while(num!=1):
if(num%2)==0:#偶數
num=num//2
else:#奇數
num=num*3+1
print(num,end='')#63105168421
❺ 角谷猜想 c語言
#include<stdio.h>
int main()
{
int n, t, m = 0;
scanf("%d", &n);
t = n;
printf("%d ", t);
while(t != 1)
{
if(t % 2)
t = t * 3 + 1;
else
t /= 2;
m++;
printf("%d ", t);
}
printf("\n%d calculate %d times,the answer become to 1!\n", n, m);
return 0;
}
❻ c語言與角谷猜想
#include<stdio.h>
main()
{int
a,b,count;
printf("請輸入a的值,以便檢驗角谷猜想。\na=");
scanf("%d",&a);
b=a;
while
(a!=1)
{if
(a>1&&a%2==0)
{a=a/2
;printf
("→%d\n",a);}
else
{a=3*a+1;printf("→%d\n",a);}
count++;}printf("%d需經過%d步才得到1.",b,count);}
//如果能夠逆推出,比方說,23的下一步是70,那麼都有哪些數的下一步是70?如此逆推,就能寫成一棵"數論樹".
❼ 用c語言程序驗證角合定理
#include "stdio.h"
proveJiaoGu(int n)
{
int count=1;
while(n!=1 && count<=1000){ /*閾值設為1000*/
if(n%2==0) /*n為偶數*/
{
printf("%d/2=%d\n",n,n/2);
n = n/2;
}
else
{
printf("%d*3+1=%d\n",n,n*3+1); /*n為奇數*/
n=n*3+1;
}
count++;
}
if(count<1000 && n==1)
printf("This natural number is according to JiaoGu Guess\n");
}
main()
{
int n;
printf("Please input a number to verify\n");
scanf("%d",&n);
printf("-------- Step of Verification---------\n");
proveJiaoGu(n);
getche();
}
❽ 驗證角谷猜想 c語言
if (count!=0)
printf("\b\n");加個\b退位
❾ 怎樣用C語言驗證角谷定理要具體過程。
#include "stdio.h"
proveJiaoGu(int n)
{
int count=1;
while(n!=1 && count<=1000){ /*閾值設為1000*/
if(n%2==0) /*n為偶數*/
{
printf("%d/2=%d\n",n,n/2);
n = n/2;
}
else
{
printf("%d*3+1=%d\n",n,n*3+1); /*n為奇數*/
n=n*3+1;
}
count++;
}
if(count<1000 && n==1)
printf("This natural number is according to JiaoGu Guess\n");
}
main()
{
int n;
printf("Please input a number to verify\n");
scanf("%d",&n);
printf("-------- Step of Verification---------\n");
proveJiaoGu(n);
getche();
}
❿ 角谷猜想,C語言,輸出過程
代碼比較簡單,各語句意義見注釋。。。
#include<stdio.h>
intmain(intargc,char*argv[])
{
inti;/*定義要處理的變數*/
scanf("%d",&i);/*輸入變數值*/
while(i!=1)
{
if(i%2)/*奇數*/
{
printf("%d*3+1=%d ",i,i*3+1);/*按題目要求的格式列印出來*/
i=i*3+1;/*更新變數值*/
}
else/*偶數*/
{
printf("%d/2=%d ",i,i/2);/*按題目要求的格式列印出來*/
i=i/2;/*更新變數值*/
}
}
printf("END ");/*最後列印END*/
return0;
}
另外幾個測試結果圖片: