0

コラッツ問題を解こうとしています。ある数値のカウンターが次の数値のカウンターよりも大きいかどうかを比較する必要がある my int high を除いて、すべて機能しているようです。最高の変数を配列として試しましたが、まだ結果が得られません。アドバイスありがとうございます。

#include <vector>
#include <iostream>

using namespace std;

int main()
{

    __int64 num;
    int i;
    int counter=0;
    //vector<int> a(1000000);
    //vector<int> b(1000000);

    __int64 highest=0;
    int j=0;

    for(j=2;j<=1000000;j++)
    {
        num=j;
        counter=0;

        for(i=0;i<1000000;i++)
        {
            cout<<"num is: "<<j<<endl;

            if(num==1)
            {
                break;
            }

            if(num%2==0)
            {
                num = num/2;
                counter++;
                cout<<num<<endl;
            }
            else if(num%2!=0)
            {  
                counter++;
                num= (num*3)+1;
                cout<<num<<endl;
            }
        }

        cout<<"counter: "<<counter<<endl;

        //this part is not working 
        if(highest<=counter)
        {
            highest=counter;
            cout<<"highest is: "<<highest<<endl;
        }

    }

    return 0;
}
4

0 に答える 0