Косинус через ряд Тейлора - C (СИ)

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

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

Вот надо написать функцию косинуса через тейлора без математических библиотек. Но так как я еще нуб, у меня не правильно)). Поправьте плз. Желательно с комментариями или обьяснениями.
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
  int fact (n)  
  {
  if (n==1)
  return 1;
  else return fact (n-1)*n;
  }
 
 int main(void)
 
 {
  float cos;
  int n=1;
  clrscr();
  float x;
  int i;
  printf ("input x");
  scanf ("%2f", x);
  for (i=0;i<10;i++) {

     cos+=((-1)*n)*(x*2*n+1)/(fact(2*n+1));
     n*=2;
     }
printf ("%5f",cos);
 return 0;
 }

Решение задачи: «Косинус через ряд Тейлора»

textual
Листинг программы
#include <stdio.h>
 
 
#define E 10//точность
int main()
{
    double x;//сам х
    double cos = 1;//общая сумма
    double down = 1;//знаменатель(факториал)
    double up = x*x;//числитель(увеличение степени х на 2)
 
    int i;
    printf("Enter x: ");
    scanf("%lf", &x);
    for (i = 2; i < E; i+=2)//сразу с 2 и по 2 вбудущем
    {
        up *= (-1)*up;//контроль -1 и увеличение степени х
        down *= (i-1) * i; //факториал
        cos += up / down; //добавление следующего компонента
    }
    printf("result: %lf\n", x);
 
    return 0;
}

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

  1. Подключение стандартной библиотеки для работы с файлами и вывода данных
  2. Определение константы точности вычислений
  3. Ввод значения переменной x с клавиатуры
  4. Инициализация переменных: cos — общая сумма down — знаменатель (факториал) up — числитель (увеличение степени х на 2)
  5. Цикл от 2 до точности-1 с шагом 2
  6. Вычисление знаменателя (факториала)
  7. Вычисление числителя (увеличение степени х на 2)
  8. Вычисление значения косинуса путем добавления следующего компонента ряда Тейлора
  9. Вывод результата на экран
  10. Возврат 0, чтобы указать, что программа успешно завершилась

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


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

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

11   голосов , оценка 3.818 из 5
Похожие ответы