Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- #include <iomanip>
- using namespace std;
- int main()
- {
- setlocale(LC_ALL, "rus");
- double x;
- int n;
- cout << "n = ";
- cin >> n;
- x = 1;
- cout << setw(5) << "x |" << setw(15) << " Сумма обычная |" << setw(12) << " слагаемых |" << setw(12) << " умножений |"
- << setw(13) << " по Горнеру |" << setw(12) << " слагаемых |" << setw(11) << " умножений " << endl;
- while (x <= 3) {
- double s_sum = 6;
- double l = -x*x; //первое слагаемое
- s_sum += l;
- int s_mult_count = 1;
- int s_adds_count = 1;
- for (int cur_n = 1; cur_n < n; cur_n++) {
- l *= -(cur_n + 1)*x*x / cur_n;
- s_mult_count += 4;
- s_sum += l;
- s_adds_count++;
- }
- int sig = !(n % 2) ? 1 : -1;
- double g_sum = sig*n;
- int g_adds_count = 0;
- int g_mult_count = 1;
- for (int currentn = n - 1; currentn >= 0; currentn--) {
- sig = -sig;
- g_sum = g_sum*x*x + sig*currentn;
- g_mult_count += 3;
- g_adds_count++;
- }
- g_sum += 6;
- g_adds_count++;
- cout << setw(3) << x << setw(15) << s_sum << setw(12) << s_adds_count << setw(12) << s_mult_count
- << setw(13) << g_sum << setw(12) << g_adds_count << setw(11) << g_mult_count << endl;
- x += 0.2 - 1e-16;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement