sasgat
22.04.2021 13:19

PYTHON По заданной последовательности a1, a2, …, an чисел вычислите сумму a1∗a2+a2∗a3+⋯+an−1∗an.
Первая строка входных данных содержит число n≥2. В следующих n строках вводится по одному числу. В i+1 строке содержится значение i-того элемента последовательности. Все числа во входном файле натуральные, не превосходящие 100.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Алексей712
08.08.2021 20:18

prev, curr, s = 0, 0, 0

n = int(input())

prev = int(input())

for i in range(1, n):

   curr = int(input())

   s += prev * curr

   prev = curr

print(s)

Объяснение:

На каждом шаге будем вычислять значение нужного произведения и прибавлять его к сумме. Так как второй элемент на i-ом шаге является первым элементом на i+1-ом шаге, заведём две переменные — предыдущий и текущий элемент — и после вычисления произведения перемещаем текущий элемент в предыдущий. Тогда каждый раз будет вычисляться верное произведение и все данные будут прочитаны один раз.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота