Вопрос задан 18.02.2019 в 13:33. Предмет Информатика. Спрашивает Зюзя Камиль.

написать программу,которая выводит на экран суммарный путь спортсмена за N дней тренировки.Если

известно,что спортсмен,начав тренировку,в первый день пробежал 5 км,каждый день он увеличивает дневную норму на 17% нормы предыдущего дня.ПОМОГИТЕ ПОЖАЛУЙСТА!!Желательно решение в 3 способах
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Сысоева Ирина.
Program sportsman;
var N, S, i : real;
begin
writeln('Введите количество дней тренировки');
readln(N);
S:=5
for  i := 1 to N-1 do
S:= S+5/100*17;
writeln('За это количество дней тренировок спортсмен пробежал', S, 'км');
readln;
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Решение 1: Использование цикла for

```python def calculate_total_distance(days): distance = 5 # начальное расстояние total_distance = distance # суммарное расстояние

for i in range(2, days + 1): distance *= 1.17 # увеличение расстояния на 17% total_distance += distance

return total_distance

# Пример использования функции days = 7 total_distance = calculate_total_distance(days) print(f"Суммарный путь спортсмена за {days} дней тренировки: {total_distance} км") ```

В этом решении мы используем цикл `for` для итерации от второго дня до заданного количества дней тренировки. На каждой итерации мы увеличиваем расстояние на 17% от предыдущего дня и добавляем его к суммарному расстоянию. В конце мы возвращаем суммарное расстояние.

Решение 2: Использование рекурсии

```python def calculate_total_distance(days, distance=5): if days == 1: return distance else: new_distance = distance * 1.17 # увеличение расстояния на 17% return distance + calculate_total_distance(days - 1, new_distance)

# Пример использования функции days = 7 total_distance = calculate_total_distance(days) print(f"Суммарный путь спортсмена за {days} дней тренировки: {total_distance} км") ```

В этом решении мы используем рекурсию для вычисления суммарного расстояния. Функция `calculate_total_distance` принимает количество дней тренировки и текущее расстояние. Если количество дней равно 1, мы возвращаем текущее расстояние. В противном случае, мы увеличиваем текущее расстояние на 17% и вызываем функцию рекурсивно для следующего дня тренировки. В конце мы возвращаем сумму текущего расстояния и результата рекурсивного вызова.

Решение 3: Использование формулы арифметической прогрессии

```python def calculate_total_distance(days): distance = 5 # начальное расстояние ratio = 1.17 # коэффициент увеличения расстояния total_distance = distance * (1 - ratio**days) / (1 - ratio)

return total_distance

# Пример использования функции days = 7 total_distance = calculate_total_distance(days) print(f"Суммарный путь спортсмена за {days} дней тренировки: {total_distance} км") ```

В этом решении мы используем формулу арифметической прогрессии для вычисления суммарного расстояния. Мы знаем начальное расстояние (5 км) и коэффициент увеличения расстояния (1.17). Используя формулу, мы можем вычислить суммарное расстояние за заданное количество дней тренировки.

Обратите внимание: Во всех трех решениях предполагается, что количество дней тренировки (`days`) является положительным целым числом. Если вам нужно обрабатывать другие типы данных или отрицательные значения, вам может потребоваться добавить соответствующую проверку и обработку ошибок.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос