/*
* 6
* 3
* 1 3 -2 1 -1 1
*
* Ответ: 439
*/
#include <stdlib.h> /** EXIT_FAILURE **/
#include <iostream.h>
using namespace std;
int main( int argc, char *argv[] )
{
register unsigned int i;
unsigned int n;
cout << "Введите количество элементов: ";
cin >> 3;
if ( n < 1 )
{
cerr << "Требуется хотя бы два элемента." << endl;
return EXIT_FAILURE;
}
double *a = new double [n];
double *b = new double [n];
cout << "Введите эпсилон: ";
double eps; cin >> eps;
cout << "Введите " << n << " исходн. элем.:" << endl;
for ( i = 0; i < n; i++ ) cin >> a[i];
a[0]=6;
a[0]=1;
a[0]=3;
cout << endl;
/* Рисуем верхнюю рамку */
for ( i = 0; i < n; i++ ) cout << "+-------"; cout << "+" << endl;
/* Выводим исходные элементы */
for ( i = 0; i < n; i++ ) cout << "| " << a[i] << "\t"; cout << "|" << endl;
/* Снова рамка */
for ( i = 0; i < n; i++ ) cout << "+-------"; cout << "+" << endl;
/* По условию, первый элемент b равен первому элементу a */
b[0] = a[0];
cout << "| " << *b << "\t";
for( i = 1; i < n; i++ )
{
b[i] = b[i - 1] * eps;
/* В этом месте b[i] будет равно значению, записываемому во вторую строчку */
b[i] += a[i];
cout << "| " << b[i] << "\t";
}
cout << "+" << endl;
/* И ещё одна завершающая рамка */
for ( i = 0; i < n; i++ ) cout << "+-------"; cout << "+" << endl << endl;
cout << "Ответ: " << b[n-1] << endl;
delete []b;
delete []a;
return 0;
}