Написать рекурсивный метод возвращающий число, для которого выполняется неравенство - C#
Формулировка задачи:
Написать рекурсивный метод (возвращающий значение), вычисляющий число a, для которого выполняется неравенство
2^a-1 <= n <= 2^a , где n - натуральное число. Для подсчета числа a использовать формулу a(n)=1 если n=1 или a(n)=a(n/2)+1 если n>1.
Решение задачи: «Написать рекурсивный метод возвращающий число, для которого выполняется неравенство»
textual
Листинг программы
using System;
class Program
{
public static void Main()
{
Func<int, int> f = null;
f = x => x == 1 ? 1 : f(x / 2) + 1;
Console.WriteLine(f(10));
}
}