PAT: 1001 attractivité tué du (3n + 1) guess (version C)

Kharazi (Callatz) pense:

Pour tout entier positif n, si elle est pair, alors il réduit de moitié, si elle est impaire, le (3n + 1): réduction de moitié. Cela a été à plusieurs reprises coupé, a finalement obtenu pour obtenir n = 1 dans une étape. Kharazi au Congrès mondial 1950 de Mathématiciens a annoncé cette conjecture, sont les légendaires professeurs d'université de Yale et les étudiants Qidong Yuan, veulent désespérément de prouver cette proposition apparemment stupide naïve, les étudiants involontairement tant des études de bruit, une seule carte (3n +1), de sorte que certaines personnes disent que c'est une conspiration, Kharazi retardait délibérément les progrès de l'enseignement et de la recherche américaine ......

Notre sujet d'aujourd'hui ne prouve pas Minka conjecture Raz, mais sur tout le nombre d'étapes (couper quelques-uns) donné nombre entier positif ne dépassant pas 1 000 n, il suffit de compter le nombre, pour obtenir n = 1 besoin?

Format d' entrée:
Chaque test comprend une entrée de test, à savoir, la valeur donnée entier positif n.

Format de sortie:
calcul sortie de la n-1 et le nombre d'étapes requises.

entrée échantillon:
3

Exemple de sortie:
5

#include <stdio.h>

int isOddnumber(int n);

int main()
{
    int n;
    int count;

    scanf("%d", &n);
    count = 0;
    while(n != 1)
    {
        if (isOddnumber(n))
            n = (3*n + 1) / 2;
        else
            n = n / 2;
        count++;
    }
    printf("%d", count);

    return 0;
}
int isOddnumber(int n)
{
    if (n % 2 != 0)
        return 1;
    
    return 0;
}
Publié 24 articles originaux · louanges gagnées 0 · Vues 161

Je suppose que tu aimes

Origine blog.csdn.net/qq_45624989/article/details/105041825
conseillé
Classement