А156а

Задача. Даны натуральное число [latex]n[/latex], действительные числа [latex]x_{1}, \cdot x_{n},(n\geq 3)[/latex]. Вычислить:

[latex](x_{1}+2x_{2}+x_{3})(x_{2}+2x_{3}+x_{4}) \cdot (x_{n-2}+2x_{n-1}+x_{n})[/latex].

Тесты:

Ввод Вывод Комментарий
6 1 1 1 1 1 1 256 Пройден
9 1 2 0 1 2 0 1 2 0 18000 Пройден
5 5 5 5 5 5 8000 Пройден

Код на С++

Код на Java

 

Решение:

Для нахождения данного произведения воспользуемся массивом. Поскольку в условии указывается нумерация с единицы, то описывая и в дальнейшем обращаясь к массиву, учтем что индекс элемента равен номеру минус единица. В условии продолжения цикла номер не должен превышать n-2, чтобы при подсчете мы не вышли за границу массива.

С работой программы на С++ можно ознакомиться здесь, а на Java здесь.

Related Images:

9 thoughts on “А156а

  1. Зачтено, но…
    — Вы неправильно набрали условие задачи. Исправьте, пожалуйста формулу.
    — Зачем начинать цикл с 1 вместо 0 и вводить в (i-1)-й элемент? Т.е. всё работает правильно, только зачем?
    — «По скольку» пишется слитно в данном случае.

    • В задаче А156а такое условие.

    • «Такое условие», это Вы про нумерацию с единицы?
      Тогда Вы не правы. В программе нужно хранить данные в массиве по законам массивов, а не по законам задачи. Представьте, что Вам дана численность населения Земли за последние 5 лет. Вы будете хранить эти значения в x[2010], x[2011], x[2012], x[2013], x[2014]? И большая часть массива будет пустовать? Так не поступают. Делают пересчёт индексов массива. Есть другие структуры данных, где пересчёт не нужен, например, ассоциативные массивы, но мы их ещё не учили.

    • «Такое условие»-это про ваше замечание о неправильно набранном условии задачи. Условие переписано верно.

Добавить комментарий