Форум программистов, компьютерный форум CyberForum.ru

Вывести число итераций, необходимое для достижения заданной точности - C++

Восстановить пароль Регистрация
 
Blackhole
 Аватар для Blackhole
0 / 0 / 0
Регистрация: 16.12.2013
Сообщений: 19
09.04.2014, 11:30     Вывести число итераций, необходимое для достижения заданной точности #1
Здравствуйте. Помогите решить:

Вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x) с точностью ε (табл. 8.1). Вывести число итераций, необходимое для дос-тижения заданной точности. Вычисление S(x) и Y(x) оформить в виде функций.
Миниатюры
Вывести число итераций, необходимое для достижения заданной точности  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2014, 11:30     Вывести число итераций, необходимое для достижения заданной точности
Посмотрите здесь:

Решить уравнение с точностю Е и указать необходимое число итераций C++
Вычислить сумму ряда. Вычисления заканчивать при достижении заданной степени точности C++
C++ Табулировать функции F и S при заданной точности E, с указанным шагом и диапазоном значений по x:
C++ Табулировать функции F и S при заданной точности E, с указанным шагом и диапазоном значений по x:
Вычисления до заданной точности C++
Программа должна показать все комбинации заданной суммы чисел заданной точности C++
C++ Вывести число итераций, необходимое для достижения заданной точности
Определите число членов ряда, необходимое для вычисления его произвендения с заданной погрешность C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ilot
Модератор
Эксперт С++
1765 / 1140 / 221
Регистрация: 16.05.2013
Сообщений: 3,017
Записей в блоге: 5
Завершенные тесты: 1
09.04.2014, 15:10     Вывести число итераций, необходимое для достижения заданной точности #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <cmath>
#include <iomanip>
using std::cout;
using std::endl;
/*
Функция принемает ссылку на число в которое передается значение вычисленной суммы,
точку в которой вычисляется сумма ряда и точность вычисления. 
Возвращает кол-во выполненных итераций
*/
int func(double&, int, double);
int main()
{
    system("chcp 1251");
    double epsilon = 1E-4;//Точность
    double s_x, s_y;//Значения сумм рядов
    int x = 2, y = -2;
    int iter_x, iter_y;//Кол-во итераций
    iter_x = func(s_x, x, epsilon);
    iter_y = func(s_y, x, epsilon);
 
    cout << std::setw(4) << 'x' << std::setw(10) << "Y(x) " << std::setw(10) << "S(x)   " << std::setw(8) << "Итерации" << endl;
 
    cout << std::setw(4) <<  x  << std::setprecision(4) << std::setw(10)
         << M_PI * (M_PI - 2 * abs(x)) / 8 << std::setw(8) << s_x << std::setw(8) << iter_x <<  endl;
    cout << std::setw(4) <<  y  << std::setprecision(4) << std::setw(10)
         << M_PI * (M_PI - 2 * abs(y)) / 8 << std::setw(8) << s_y << std::setw(8) << iter_y << endl;
    return 0;
}
int func(double& summ, int x, double epsilon)
{
    int k = 1;
    summ = 0.0;
    double max = epsilon + 1;
 
    for(; max > epsilon; k += 2) {
        max = 1./ (k * k);
        summ += cos(k * x) * max ;
    }
    return (k + 1) / 2;
}
Yandex
Объявления
09.04.2014, 15:10     Вывести число итераций, необходимое для достижения заданной точности
Ответ Создать тему
Опции темы

Текущее время: 17:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru