Итерационное решение уравнения

Здесь рассмотрим процесс по­иска корня уравнения вида \(x=\varphi \left(x \right)\) методом последовательных итераций с записью приближенного значения на каждом итерационном шаге в мас­cив. Такой подход подразумевает создание динамического массива. Программный код приведен ниже. Для примера здесь решается уравнение \(x=\sqrt{1+x}\).
#include 
#include 
using namespace std;
//Функция, определяющая уравнение:
double phi(double x){
return sqrt(1+x);}
//Функция для отображения значений массива:
void show(double *x,int n){
int i;
for(i=0; i < n; i++)
 cout << "x" << i << " = " << x[i] << endl;
}
int main(){
//Индексная переменная и число итераций:
int i,n;
//Массив приближений для корня:
double *x;
cout << "Enter n = ";
cin >> n;
//Создание массива:
x=new double[n+1];
//Начальное приближение:
cout << "Enter x0 = ";
cin >> x[0];
//Вычисление корня:
for(i=1; i < = n; i++) x[i]=phi(x[i-1]);
//Отображение результата:
show(x,n+1);
return 0;
}
Онлайн всего: 2
Гостей: 2
Пользователей: 0

STUDLAB Сообщить про опечатку на сайте