Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- #include <cmath>
- using namespace std;
- double predel1(double);
- double predel2(double);
- double predel3(double);
- int main()
- {
- setlocale(0,"");
- double eps;
- cout << "Необходимо задать точность вычисления: ";
- cin >> eps;
- cout << "Результат цикла while " << predel1(eps) << endl;
- cout << "Результат цикла do while " << predel2(eps) << endl;
- cout << "Результат цикла for " << predel3(eps) << endl;
- system("pause");
- return 0;
- }
- double predel1(double eps)
- {
- unsigned int n = 1;
- double yn1 = (pow(n,2) + 5) / (2 * pow(n,3) + pow(n,2) + 1);
- n++;
- double yn = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1);
- while (fabs(yn - yn1) > eps && n < INT_MAX)
- {
- n++;
- yn1 = yn;
- yn = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1);
- }
- return yn;
- }
- double predel2(double eps)
- {
- unsigned int n = 1;
- double yn = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1), yn1;
- do
- {
- n++;
- yn1 = yn;
- yn = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1);
- } while (fabs(yn - yn1) > eps && n < INT_MAX);
- return yn;
- }
- double predel3(double eps)
- {
- unsigned int n = 1;
- double yn1 = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1), yn;
- for (n++, yn = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1); fabs(yn - yn1) > eps && n < INT_MAX; )
- {
- yn1 = yn;
- n++;
- yn = (pow(n, 2) + 5) / (2 * pow(n, 3) + pow(n, 2) + 1);
- }
- return yn;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement