例題2-2 3n+1問題《算法入門競賽經典第二版》

對於任意大於1的自然數n,若n爲奇數,則將n變爲3n+1,否則變爲n的一半。經過若干次這樣的變換,一定會使n變爲1。
例如,3→10→5→16→8→4→2→1。
輸入n,輸出變換的次數。 n≤109。
樣例輸入:
3 樣
例輸出:
7

#include<stdio.h>
int main(){
    int nb,count=0;
    scanf("%d",&nb);
    long long n = nb;
    while(n>1){
        if(n %2 ==1){
            n = n*3+1;
        }else{
            n = n/2;
        }
        count++;
        }
    printf("%d",count);
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章