const int max = 1000000;

void main(){
	int s = _scan();
	int[int] dic;
	dic[s]++;
	// 初項sでa_1, ... なので2から始まる
	foreach(i; 2..max+1){
		if(s&1) s = 3*s +1;
		else s = s/2;

		dic[s]++;
		if(dic[s]==2){
			i.writeln();
			break;
		}
	}
}

import std.stdio, std.conv, std.algorithm, std.numeric, std.string, std.math;

// 1要素のみの入力
T _scan(T= int)(){
	return to!(T)( readln().chomp() );
}

// 1行に同一型の複数入力
T[] _scanln(T = int)(){
	T[] ln;
	foreach(string elm; readln().chomp().split()){
		ln ~= elm.to!T();
	}
	return ln;
}
