Предмет: Информатика,
автор: GoldEater
PYTHON
По заданной последовательности a1, a2, …, an чисел вычислите сумму a1∗a2+a2∗a3+⋯+an−1∗an.
Первая строка входных данных содержит число n≥2. В следующих n строках вводится по одному числу. В i+1 строке содержится значение i-того элемента последовательности. Все числа во входном файле натуральные, не превосходящие 100.
Ответы
Автор ответа:
3
Ответ:
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-ом шаге, заведём две переменные — предыдущий и текущий элемент — и после вычисления произведения перемещаем текущий элемент в предыдущий. Тогда каждый раз будет вычисляться верное произведение и все данные будут прочитаны один раз.
Похожие вопросы
Предмет: Русский язык,
автор: Vikulya240806
Предмет: Русский язык,
автор: maga12342
Предмет: Русский язык,
автор: муслимат1
Предмет: История,
автор: ErnestoGoldwin1
Предмет: Алгебра,
автор: Аноним