Загрузка...

Who's fumbling about C ++?

Thread in C/C++ created by Nikitos3 Mar 19, 2021. 545 views

  1. Nikitos3
    Nikitos3 Topic starter Mar 19, 2021 117 Apr 15, 2020
    Рассмотрим подпрограмму f, определенную рядом с ней. Какое значение имеет f (250)
    [IMG]
    Надо срочно
     
  2. MiExist
    MiExist Mar 19, 2021 Пишите, стараюсь отвечать быстро 83 Jul 21, 2018
    1. MiExist
      Объясняю: это рекурсия. Сумма 250 не делится ровно на 3, функция выполняется повторно добавляя один к возврату числа
    2. MiExist
      Было 250, оно не делится на 3 ровно. Добавляем один к выводу, запускаем заново но уже с 83,333 (возьмёт цифру 83, так как нужен int). Запуск повторно: 83 не делится на три ровно, добавляется 1 к уже существующей 1 (У нас уже два и запуск повторно и берём число 27,666 но из-за int это 27). 27 делится на три, добавляется 0 и функция больше не выполняется. Считаем результат: 1+1+0 = 2
  3. WhyNPRBLM
    WhyNPRBLM Mar 19, 2021 пока не умер 61 Jul 15, 2020
    Щас объясню. Там пишет что если 250 нацело не делиться на 3, то возвращаем 0, а если число делиться то 1+ f(250/3). Так как 250 не может делиться на 3 то возвращаем 0, всё просто
     
    1. View previous comments (3)
    2. WhyNPRBLM
      @c3zs4r,ты ошибся немного в конце. Да она правда вернёт 1+f(x/3) , но f(x/3) не равно 0. Так как 250/3 даст нам число которое делиться на 3 и если подставить его в функцию, то оно вернёт 0, так что 1+0=1
    3. WhyNPRBLM
      @c3zs4r,да ты прав, я перепутал
    4. WhyNPRBLM
      @c3zs4r,нет не прав, я тоже перепутал. Вышло 2. [IMG]
  4. Nikitos3
    Nikitos3 Topic starter Mar 19, 2021 117 Apr 15, 2020
    Вы чё не шарите а так пишите а ???:Ktonahuy:
     
    1. MiExist
      Nikitos3, проверь пожалуйста. Мой вариант правильный, так как проходила Haskell на рекурсии :)
  5. Checkerchin
    Checkerchin Mar 19, 2021 178 Apr 16, 2017
    2.
    252 делится на 3, значит будет 2 итерации
     
    1. View previous comments (7)
    2. Checkerchin
      MiExist,
      250 / 27 = 252 / 3 (в левой части кратность учитываем, в обоих частях 0)
      27 = 3 * 3 * 3
      250 / 3 = 83
      250 / 3 = 27
      250 / 3 = 9 (тут кратность => 0)
      В любом случае вопрос сколько вернётся, а как вы в уме это решить неважно
    3. WhyNPRBLM
      Checkerchin, сори, я не учёл, что когда x/3 оно даст целое число 83 которое не делиться нацело на 3. По этому у меня вышло 1. Если б float был, то 1 был бы ответ.
  6. Nikitos3
    Nikitos3 Topic starter Mar 19, 2021 117 Apr 15, 2020
    Рассмотрим следующую подпрограмму, а x - целочисленную переменную, значение которой равно 2, какое значение будет иметь x после вызова
    [IMG]
     
    1. MiExist
      Nikitos3, мы не можем брать pointer в этом случае…
    2. MiExist
      Nikitos3, выбери 4 в случае игнорирования у
  7. Nikitos3
    Nikitos3 Topic starter Mar 19, 2021 117 Apr 15, 2020
    Пацаны спасибо всем !:ok_shy::froglove:
     
Top
Loading...