Бесплатное занятие с репетитором 1 на 1! Оценим уровень знаний, разберём тему,
сформируем план подготовки к ЕГЭ. Запишись через тг-бот

осталось мест 52
Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №16
  • Задание №16
  • Задание №35240 ЕГЭ Информатике

    Условие задания #35240

    №16 по КИМ

    Определите, сколько символов * выведет эта процедура при вызове F(280):

     

    Python

    Паскаль

    C++

    def F( n ):

      print('*')

      if n >= 1:

        print('*')

        F(n-1)

        F(n//3)

        print('*')

     

    procedure F( n: integer );

    begin

      write('*');

      if n >= 1 then begin

        write('*');

        F(n-1);

        F(n div 3);

        write('*');

      end;

    end;

    void F( int n )

    {

      cout << '*';

      if( n >= 1 ) {

        cout << '*';

        F(n-1);

        F(n/3);

        cout << '*';

        }

    }

    Ответ

    Ответ:

    2468785

    Решение

    Приведём решение на языке Python:

     

    k = 0
    def F(n):
        #print('*')
        global k
        k += 1
        if n >= 1:
            #print('*')
            k += 1
            F(n-1)
            F(n//3)
            #print('*')
            k += 1

    F(280)
    print(k)

     

    Результат работы программы - 2468785.

    Видеоразбор:

    Понятно ли решение?

    Решения от учеников
    0

    Похожие задания

    15
    Задание №44128Задание №147Задание №148Задание №149Задание №71676Задание №87750Задание №2143Задание №44138Задание №35240Задание №39323Задание №53253Задание №83700Задание №39748Задание №39749Задание №87751
    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме