0
我正在閱讀有關二元遞歸GCD算法的部分,其中定義如下給出 讓v_2(a)表示a的2-adic估值,即至少連續0的數目的二進制表示的顯着性位,所以我試圖找到V_2(一)下面是該給定整數的2位數
#include <iostream>
using namespace std;
int main()
{
int total=0;
int n,k;
cout << "enter value n ";
k=0;
cin >> n;
while(k!=1)
{
if (k==1)
{
break;
}
k=n%2;
n>>=1;
total++;
}
cout<<total<<" "<<endl;
return 0;
}
代碼時,我輸入數字12(二進制是1100),它應該給我號碼2,但它顯示3,有什麼不對嗎?請幫我