C. Задание по программированию 1 курс. Циклы for, do_while, while - C (СИ)
Формулировка задачи:
Здравствуйте! Прошу помощи в решении вычисления тригонометрической функции. Задание конкретно звучит так:
Рассчитать значение тригонометрической функции через степенной ряд. Определить параметры цикла, при которых погрешность вычисления будет меньше 0,0001.
Очень прошу, чтобы при написании программы использовались знания в районе 1 курса и после каждой нужной строчки кода были написаны комментарии, чтобы я потом понимала, что происходит. Заранее благодарю!Решение задачи: «C. Задание по программированию 1 курс. Циклы for, do_while, while»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <windows.h> #define pi 3.14159265358979323846264 int main() { SetConsoleCP( 1251 ); // русская локализация для ввода SetConsoleOutputCP( 1251 ); // русская локализация для вывода double eps = 1e-4; // погрешность 10^(-4) double mult = 1.0, ch = mult; // произведение и очередной член ряда double x, x_1; scanf( "%lf", &x ); // вводите аргумент в градусах( 30 45 60 и т.д) x_1 = x*pi/180; // перевод в радианы x и присваивание значения переменной x_1 for( int i = 0;; i++ ) // бесконечный цикл { ch = ( 1.0 - (4.0*x_1*x_1)/( pow( 2.0*i + 1.0, 2.0 )*pi*pi ) ); // очередной член ряда mult *= ch; // умножение предыдущего произведения на новый член ряда if( fabs( ch - 1.0 ) <= eps ) // так как предел общегго члена ряда 1 модуль разности члена ряда и 1 есть ваша погрешность { printf( "Кол - во итераций для достижения такой погрешности: %d\nЗначения cos(%.f) = %f", i, x, mult ); break; // выход из цикла } } return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы.
- Устанавливаем русскую локализацию для ввода и вывода.
- Определяем погрешность и инициализируем переменные mult и ch.
- Считываем аргумент x в градусах.
- Переводим x в радианы и присваиваем значение переменной x_1.
- Запускаем бесконечный цикл с переменной i равной 0.
- Внутри цикла вычисляем очередной член ряда и обновляем значение переменной ch.
- Обновляем значение переменной mult, умножая её на новый член ряда.
- Проверяем условие для выхода из цикла, сравнивая модуль разности ch и 1 с погрешностью eps.
- Если условие выполняется, выводим количество итераций, значение x и значение mult.
- Выходим из цикла с помощью оператора break.
- Возвращаем 0, чтобы указать, что программа успешно завершилась.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д