Информатика, вопрос задал nekit1197 , 2 года назад

Розробіть код до задачі(Python).
В перший день спортсмен пробіг x кілометрів, а потім він
кожен день збільшував пробіг на 10% від попереднього
значення.
За даним числом y визначте номер дня, за який пробіг
спортсмена складе не менше y кілометрів.

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

Ответил MaxLevs
3

Задача

В первый день спортсмен пробежал x километров, а потом он

каждый день увеличивал пробег на 10% от предыдущего

значения.

По данным числом y определите номер дня, за который пробег

спортсмена составит не менее y километров.

Решение

Добавление к x 10% эквивалентно нахождению 110% от x или же 1.1 \times x.

Математический способ

  • from math import log, ceil
  • def speedman(x, y):
  •    return int(ceil(log(float(y)/float(x))/log(1.1)))

Итерационный способ

  • def speedmanloop(x, y):
  •    n = 0
  •    while x < y:
  •        x *= 1.1
  •        n += 1
  •    return n

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