程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 變換-哎,我也就郁悶了,怎麼簡單的題自己竟然找不見錯誤。

變換-哎,我也就郁悶了,怎麼簡單的題自己竟然找不見錯誤。

編輯:編程綜合問答
哎,我也就郁悶了,怎麼簡單的題自己竟然找不見錯誤。

問題描述:
對於每一個大於1的正整數,如果它是奇數,則將其乘3加1,如果它是偶數,則將除以2,如此循環,最終將得到1。輸出數據包含從這個整數到1的按照敘拉古猜想變換的序列,每行一個數字。

 #include <stdio.h>

int main()
{
    int a;
    scanf("%d",&a);
    while(1)
    {
        if( a%2 == 0 )
        {
            a = a / 2;
            printf("%d\n",a);
        }
        if( a%2 != 0 )
        {
            a = a * 3 + 1;
            printf("%d\n",a);
        }
        if( a == 1 )    break;
    }
    return 0;
}

最佳回答:


 // ConsoleApplication1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "math.h"

int _tmain(int argc, _TCHAR* argv[])
{
    int a;
    scanf_s("%d", &a);
    while (1)
    {
        if (a == 1)
            break;
        if (a % 2 == 0)
        {
            a = a / 2;
            printf("%d\n", a);
            continue;
        }
        if (a % 2 != 0)
        {
            a = a * 3 + 1;
            printf("%d\n", a);
            continue;
        }
    }
    return 0;
}


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved