Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
1 / 1 / 2
Регистрация: 02.11.2009
Сообщений: 14
1

Подсчитать сумму членов ряда с точностью до 0.000001

27.02.2010, 23:09. Показов 3619. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Проверьте, пожалуйста, два кода для одного задания:

Задание: Для ряда, члены которого вычисляются по формуле, соответствующей Вашему индивидуальному заданию, подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда. Если Вы считаете это необходимым, можете упростить или преобразовать выражение.

формула: (-1^n)*( ((n+1)^2)/((n+2)^2))

Код 1
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
void main()
 
{
clrscr();
 
const float eps = 1e-6;                      // eps - the number, which determines the limit of precise
float a, b, c, sum, sum10;                   // variables for groupping of equialence and adding
for (int i; fabs(a) <= eps; i++)                 // this cycle will initiate the counting of all numbers,                                       //which are don`t exceed the "eps". 
    {
    c= pow ( (i+1), 2 );                    // division
    b= pow ( (i+2), 2 );                    // divider
    a= pow (-1,i) * ( 1-(c/b) );                            // equialence
    sum += a;                                               // adding to summ
    cout << i <<" iterations" << endl;          // the full amount of iterations
    }
for (int n = 0; n != 10; n++)                   // this cycle will initiate the counting of 10 numbers
    {
        c= pow ( (n+1), 2 );                // almost similiar to one above, but without checking on limit exceeding
        b= pow ( (n+2), 2 );
        a= pow (-1,n)*( 1-(c/b) );
        sum10 += a;
    }
 
cout<<"-------------------------------------------" << endl;
cout<< sum <<" - this is summ of "<<i<<" numbers" << endl;
cout<<"-------------------------------------------" << endl;
cout<< sum10 <<" - this is summ of "<<n<<" numbers" << endl;
getch();
}
Код 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
#include <conio.h>
#include <iostream.h>
#include <math.h>
int main(void)
 
{
 clrscr();
 
 long n;                            /* параметр ряда */
 double dbln;                       /* параметр ряда в форме с плавающей точкой */
 double sum=0;                      /* сумма членов ряда */
 double term;                       /* значение текущего члена */
 const double eps=0.000001;             /* предел точности */
 long k2=1;                         /* pow(2,n)*/
 short k1=1;                        /* pow(-1,n)*/
                        /* основной цикл; в модификациях вычисляются
                        следующие значения pow(2,n) и pow(-1,n)*/
   for (n=0; ; n++, k2*=2, k1=-k1)
   {
                        /* преобразование n в форму с плавающей точкой */
    // dbln=n;
                        /* вычисление очередного члена */
     term=pow(k1,n)*(1-(pow ((n+1),2))/(pow((n+2),2)));
                        /* проверка достижения предела точности */
     if (fabs(term)>=eps)
                        /* если не достигнут - накопление суммы */
    sum+=term;
                        /* если достигнут - выход из цикла */
     else break;
                        /* если 10 членов - вывод суммы */
     if (n==9)
    cout<<"‘Сумма 10 чисел* = \n"<<sum;
     }
                        /* конец основного цикла */
                        /* вывод окончательной суммы */
   cout<<"Полная сумма* "<<n<<" чисел"« = \n"<<sum;
  getch();
  return 0;
}
                            /* конец программы */
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.02.2010, 23:09
Ответы с готовыми решениями:

Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда
Добавлено через 10 часов 32 минуты Для ряда, члены которого вычисляются по формуле,...

Подсчитать сумму членов ряда с точностью до 0.000001
Для ряда, члены которого вычисляются по формуле, подсчитать сумму членов ряда с точностью до...

подсчитать сумму членов ряда с точностью до 0.000001
Для ряда, члены которого вычисляются по приведенной ниже формуле, подсчитать сумму членов ряда с...

Подсчитать сумму членов ряда с точностью до 0.000001
Для ряда, члены которого вычисляются по формуле а=(-1^n)/(n+1), подсчитать сумму членов ряда с...

2
 Аватар для Amarted
158 / 20 / 3
Регистрация: 26.02.2010
Сообщений: 56
28.02.2010, 06:04 2
Код 1
По поводу результата сказать не могу, т.к. незнаю какой он должен быть, т.к. не шарю эти членоряды всякие. Но по коду следущее
строка 11 переменным не присвоены начальные значения, там хлам всякий хранится.
строка 12 не задано начальное значение i.
строка 16 зачем (с/b) вычитать из единицы? судя по формуле это делать не нужно?
если присвоить i 0 то цикл выполнится 1 раз... мне кажется условие не верное наверное.
cout << i <<" iterations" << endl; как я понимаю должно выводить общее количество итераций, так что идти оно должно после строки 19 вне цикла

код 2
строка 26 (fabs(term)>=eps) это ли не зацикливание, или я ошибаюсь?
0
1 / 1 / 2
Регистрация: 02.11.2009
Сообщений: 14
28.02.2010, 18:01  [ТС] 3
Ой, формулу неправильно написала
(-1^n)*(1- ((n+1)^2)/((n+2)^2))
0
28.02.2010, 18:01
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.02.2010, 18:01
Помогаю со студенческими работами здесь

Циклы: подсчитать сумму членов ряда с точностью до 0.000001
Для ряда, члены которого вычисляются по формуле ниже, подсчитать сумму членов ряда с точностью до...

Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда
Как будет выглядеть программа на Си Задания для выполнения Для ряда a_1+a_2 +\cdots+ a_n +...

Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда
Для ряда, члены которого вычисляются по формуле, соответствующей Вашему индивидуальному заданию,...

Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда
вот формула по которому можно ориентироваться: a_n=\left(-1 \right)^n\,\frac{n+1}{n^2+1}


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Что такое внедрение зависимостей и для чего оно применяется
bytestream 27.01.2025
В современной разработке программного обеспечения одной из ключевых проблем является управление зависимостями между различными компонентами системы. Внедрение зависимостей (Dependency Injection, DI). . .
Как установить cellpadding и cellspacing в CSS
bytestream 27.01.2025
При создании веб-страниц с табличными данными разработчики часто сталкиваются с необходимостью правильного оформления внутренних и внешних отступов в таблицах. В традиционной разметке HTML для этих. . .
Чем отличаются public, protected, package-private и private в Java
bytestream 27.01.2025
В языке программирования Java механизм модификаторов доступа играет ключевую роль в реализации одного из фундаментальных принципов объектно-ориентированного программирования - инкапсуляции. . . .
Зачем нужно explicit в C++. Преобразование типов
bytestream 27.01.2025
В мире программирования на C++ управление преобразованием типов данных играет crucial роль в создании надежного и безопасного кода. Язык C++ предоставляет множество механизмов для контроля над. . .
Как создать удалённую (remote) ветку в Git
bytestream 27.01.2025
Система контроля версий Git стала неотъемлемой частью современной разработки программного обеспечения, предоставляя разработчикам мощные инструменты для управления кодовой базой. Одним из ключевых. . .
Как создать утечку памяти в Java
bytestream 27.01.2025
Утечка памяти в Java представляет собой ситуацию, когда программа неэффективно использует доступную память, удерживая ссылки на объекты, которые больше не нужны для работы приложения. Несмотря на. . .
КуМир: как решать задачи на числа
bytestream 27.01.2025
КуМир (Комплект Учебных МИРов) представляет собой уникальную образовательную среду программирования, разработанную специально для обучения основам алгоритмизации и программирования. Эта система. . .
Исполнитель Черепаха в КуМир: как решать задачи
bytestream 27.01.2025
Исполнитель Черепаха в системе КуМир представляет собой мощный образовательный инструмент, который помогает освоить основы программирования через визуальное представление результатов выполнения. . .
КуМир: как решать задачи на массивы
bytestream 27.01.2025
Массивы представляют собой важнейшую структуру данных в программировании, и система КуМир предоставляет удобные инструменты для работы с ними. В контексте КуМир массив можно представить как. . .
[golang] 26. Remove Duplicates from Sorted Array
alhaos 27.01.2025
Необходимо удалить дубликаты из предоставленного целочисленного отсортированного по взрастанию слайса, нужно изменить значения в слайсе и вернуть количество элементов. / / . . .
КуМир, исполнитель Робот. Решение задач
bytestream 27.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения программированию, которая была создана в Отделении информатики Российской Академии наук. Эта система разработана. . .
Асинхронное программировани­е и async/await в JavaScript
bytestream 27.01.2025
Асинхронное программирование представляет собой фундаментальную концепцию в современной разработке на JavaScript, которая позволяет выполнять длительные операции без блокировки основного потока. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru