Технология программирования. Базовые конструкции C/C++. Липачев Е.К. - 85 стр.

UptoLike

Составители: 

85
Пример. Реализацию алгоритмов, как правило, оформляют в виде
функций, а в функцию main() помещают только вызовы этих функций.
Следующий код является такой модификацией предыдущего примера.
// Метод итераций
//
#include "stdafx.h"
#include <iostream>
#include <cmath>
using namespace std;
const int NMax=1000; // Макс. число шагов метода
// Прототипы функций:
double g(double);
double iterat(double , double , int * );
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_CTYPE, "rus"); // русификация консоли
double y;
int n;
y=iterat(2.5,1.e-5,&n);// Вызов функции
cout<<"\nЗа "<<n<<
" итераций найдено прибл. решение = "<<y<<"\n";
return 0;
}
double g(double x) // Определение функции
{
// Значение правой части x=g(x)
return - x * x * x * 0.04 + 1.08 * x + 0.2;
}
double iterat(double x,double e, int * k)
{
double y;
double d;
// Метод итерации:
*k =1;
do
{
y = g(x);
d = fabs(y-x);
(*k)++;
x = y;
} while ((d>e) && ((*k)<NMax));
     Пример. Реализацию алгоритмов, как правило, оформляют в виде
функций, а в функцию main() помещают только вызовы этих функций.
Следующий код является такой модификацией предыдущего примера.
// Метод итераций
//
#include "stdafx.h"
#include 
#include 
using namespace std;

const int NMax=1000; // Макс. число шагов метода

// Прототипы функций:
double g(double);
double iterat(double , double , int * );

int _tmain(int argc, _TCHAR* argv[])
{
  setlocale(LC_CTYPE, "rus"); // русификация консоли
  double y;
  int n;
  y=iterat(2.5,1.e-5,&n);// Вызов функции
  cout<<"\nЗа "<e) && ((*k)