Информатика, вопрос задал mary729739 , 6 лет назад

Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:

F(n) = 0 при n = 0
F(n) = F(n/2) - 1 при чётных n > 0
F(n) = 2 + F(n–1) при нечётных n > 0
Сколько существует чисел n, меньших 1000, для которых значение F(n) будет равно 3?

Ответы на вопрос

Ответил aw2048
0

Ответ:

173

Объяснение C#:

  static int F(int n)

       {

           if(n==0)

           { return 0; }

           else

           { if(n>0&&n%2==0)

               {

                   return F(n / 2) - 1;

               }

           else

               { if (n > 0 && n % 2 != 0)

                   {

                       return 2 + F(n - 1);

                   }

                   else

                   { return 0; }

               }

           }

       }

       static void Main(string[] args)

       {

           int count = 0;

           for (int i = -1000; i <1000; i++)

           {

               if(F(i)==3)

               { count++; }

           }

           Console.WriteLine(count);

       }

Новые вопросы