Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.11.2016, 14:42   #1
Madina0226
Новичок
Джуниор
 
Регистрация: 22.03.2016
Сообщений: 2
По умолчанию Вычисление функций с использованием их разложения в степенной ряд

Доброго времени! Вот задание, условия и мой код, вроде все верно, но все равно выводит большую погрешность, понимаю, что ошибка в условии выхода из while, но какое условие тогда задать?

Функция: y= -ln|2sinx/2|
диапазон изменения аргумента: pi/5<=x<=9pi/5
n=40
сумма: S=cosx+cos2x/2+...+cosnx/n

Листинг
package laboratornaya3;
import static java.lang.Math.*;
public class Laboratornaya3 {
public static void main(String[] args) {
double a = PI / 5,
b = 9 * PI / 5,
E = 0.0001,
pSN, pSE;
int n = 40;
double dx=(b-a)/10;
//Шапка
System.out.printf("%-15s %-30s %-30s %-30s %-30s %-30s", "x", "y", "SN", "SE", "pSN", "pSE");
System.out.println();
for (double x = a; x <= b; x += dx)
{
// Точное значение Y
double y = -log(abs(2*sin(x/2)));
// SN
double SN = 0;
for (int i = 1; i <= n; i++)
{
SN += cos(i*x)/i;
}
// SE
double SE = 0;
int i = 1;
double step;
do
{
step = cos(i*x)/i;
SE+=step;
i++;
}
while (abs(step)>=E);
// погрешности
pSN = abs((y - SN) / y);
pSE = abs((y - SE) / y);
//вывод
System.out.printf("%-15s %-30s %-30s %-30s %-30s %-30s",
String.format("%.5f", x), y, SN, SE, pSN, pSE);
System.out.println();
}
}
}
Madina0226 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычисление функций с использованием их разложения в степенной ряд C# Goodlak123 C# (си шарп) 2 02.11.2016 15:33
ВЫчисление функции с помощью разложения в ряд. katris Помощь студентам 1 03.03.2013 17:26
Вычисление функции с помощью разложения в ряд LaraKiller Общие вопросы C/C++ 2 11.10.2009 20:05
Вычисление функции заданной в виде разложения в ряд StudeHt Паскаль, Turbo Pascal, PascalABC.NET 2 02.05.2009 20:08
Вычисление значений тригонометрических функций на основе разложения в ряд Маклорена Gangzta Помощь студентам 3 10.01.2009 15:47