Вычисление суммы бесконечного ряда - C (СИ) (149284)

Узнай цену своей работы

Формулировка задачи:

Поступил в этом году в вуз, а там с первых дней программирование на уровне, мне недоступном. Первые пару заданий еще сделал, а тут совсем завис. Понимаю, что это очень интересно, но абсолютно не могу сделать вот это. Если кто поможет, буду очень благодарен. Вот собсно задание: Написать на языке C функцию приближённого вычисления суммы бесконечного степенного ряда из таблицы 2 согласно номеру варианта. При работе функция должна суммировать не менее 10 членов ряда, а далее продолжать суммирование до тех пор, пока очередной член ряда не станет достаточно мал по сравнению с суммой предыдущих членов ряда. Окончание суммирования должно быть произведено, когда модуль отношения очередного члена ряда к сумме всех предыдущих членов не станет меньше некоторого заданного пользователем числа, которое будем называть “точностью”. Функция должна принимать в качестве аргументов два вещественных значения: первый аргумент – значение x, при котором надо вычислить значение суммы ряда, второй аргумент – “точность”. Возвращаемое функцией значение – это значение вычисленной суммы ряда.

Решение задачи: «Вычисление суммы бесконечного ряда»

textual
Листинг программы
#include<stdlib.h>
#include<math.h>
#include<stdio.h>
 
double dva(float x, float tochnost)
{
    int i;
    float y, sum;
    double Si = 1;
    double S = 1;   
    for(i=1; i<10 || (Si/S)>tochnost; i++)
        {
            Si=-Si*x*sqrt((2.))/i;
                S=S+Si*cos(3.1415*i/4);
                //printf("tytytyt");
        }
        //printf("%lf", S);
        return S;
}
 
 
int main ()
{
    float tochnost, x;
    printf("vvedite tochnost i x");
        scanf("%f", &tochnost);
        scanf("%f", &x);
    printf("%lf" ,dva(x, tochnost));
//  system(pause);
    return 0;
}

Объяснение кода листинга программы

В этом коде выполняется вычисление суммы бесконечного ряда. Функция dva принимает два аргумента: x и tochnost. Переменная tochnost используется как показатель точности вычислений. В основной функции main пользователю предлагается ввести значения x и tochnost, после чего вызывается функция dva и выводится результат. Вот список элементов кода с их номерами:

  1. 1. Объявление переменных в функции dva:
    • i (1) - счетчик цикла
    • y (1) - временная переменная
    • sum (1) - переменная для хранения суммы ряда
    • Si (1) - текущее значение синуса
    • S (1) - текущее значение суммы ряда
    • tochnost (1) - показатель точности вычислений
    • x (1) - значение аргумента x
  2. 2. Условие цикла for в функции dva:
    • Цикл выполняется, пока i меньше 10 или значение Si превышает tochnost
  3. 3. Вычисление значения Si внутри цикла for в функции dva:
    • Значение Si вычисляется как отрицательное произведение x на синус квадратного корня из 2, деленное на i
  4. 4. Вычисление значения S внутри цикла for в функции dva:
    • Значение S увеличивается на текущее значение Si, умноженное на косинус 3.1415*i/4
  5. 5. Комментарий //printf(%lf, S); в функции dva:
    • В этом месте можно было бы выводить значение S для проверки результатов
  6. 6. Вывод значения S в функции main:
    • Значение S передается в функцию printf для вывода на экран
  7. 7. Вызов функции dva в функции main:
    • Функция dva вызывается с аргументами x и tochnost, и результат выводится на экран
  8. 8. Комментарий // system(pause); в функции main:
    • В этой строке можно было бы добавить паузу, чтобы программа не закрывалась сразу после вывода результата
  9. 9. Возврат значения 0 в функции main:
    • Это означает успешный конец работы программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5