YTU OJ 1098: The 3n + 1 problem
using System;
class Program
{
static void Main(String[] agrs)
{
string num;
method method = new method();
while (String.IsNullOrEmpty(num = Console.ReadLine()) == false)
{
method.shuru(num);
method.cal();
}
}
}
class method
{
int i = 0, i1 = 0;
int j = 0, j1 = 0;
int Toushu;
int tom;
string num1;
string[] num2;
public string shuru(string num)
{
num1 = num;
num2 = num1.Split(' ');
i =Convert.ToInt32( num2[0]);
j =Convert.ToInt32( num2[1]);
return num;
}
public void cal()
{
i1 = i;
j1 = j;
if (i > j)
{
i = i ^ j;
j = i ^ j;
i = i ^ j;
}
int max = 0;
for (var a = i; a < j; a++)
{
int sum = 0;
Toushu = a;
while (Toushu != 1)
{
if (Toushu % 2 == 0)
{
Toushu /= 2;
sum += 1;
}
else if (Toushu % 2 != 0)
{
Toushu = Toushu * 3 + 1;
sum += 1;
}
}
sum += 1;
if (sum > max)
max = sum;
}
Console.WriteLine("{0} {1} {2}", i1, j1, max);
}
}