Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 14.09.2019
Сообщений: 4
1

Проверить справедливость соотношения

14.09.2019, 19:47. Показов 2705. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не могу написать программу в паскале, задали лабораторную работу.

Проверить справедливость соотношения.
https://www.cyberforum.ru/cgi-bin/latex.cgi?S=cos(x)+\frac{cos(3x)}{{3}^{2}}+\frac{cos(5x)}{{5}^{2}}+...+\frac{cos((2n-1)x)}{{(2n-1)}^{2}}
с точностью https://www.cyberforum.ru/cgi-bin/latex.cgi?\epsilon={10}^{-4}
Точное значение функции
https://www.cyberforum.ru/cgi-bin/latex.cgi?y=\frac{{\pi}^{2}}{8}-\frac{\pi}{4}\cdot|x|

https://www.cyberforum.ru/cgi-bin/latex.cgi?x=\frac{\pi}{5}\left(\frac{\pi}{10} \right\)\pi

Поправил числитель в последнем члене ряда.

Вложение 1066710

Pascal
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
const e=0.0001;
function S(x:real):real;
var t,y:real;
    n:integer;
begin
n:=1;
t:=cos(x);
y:=t;
while abs(t)>e do
 begin
  inc(n);
  t:=cos((2*n-1)*x)/sqr(2*n-1);
  y:=y+t;
 end;
S:=y;
end;
function Y(x:real):real;
begin
Y:=sqr(pi)/8-pi*abs(x)/4;
end;
var x:real;
begin
x:=pi/5;
while x<=pi do
 begin
  writeln('x=',x:0:2,' S=',S(x):7:4,' Y=',Y(x):7:4);
  x:=x+pi/10;
 end;
end.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.09.2019, 19:47
Ответы с готовыми решениями:

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

Проверить справедливость неравенств для заданного n
Проверить справедливость неравенств для заданного n. 2n&gt;5*n+1

Файлы. Проверить справедливость высказывания: В число входит цифра из соответствующей записи второго файла
. В первом файле хранятся произвольные целые числа. Во втором - цифры в произвольном порядке....

Проверить справедливость соотношения
Помогите пожалуйста написать программу на с++ ,которая проверяет справедливость соотношения...

1
Модератор
10074 / 5415 / 3356
Регистрация: 17.08.2012
Сообщений: 16,578
23.11.2019, 05:21 2
Лучший ответ Сообщение было отмечено Ciber_Woolf как решение

Решение

Вопрос в том, изучали ли Вы числовые и функциональные ряды, или нет.

Если не изучали, то Ваша программа для сдачи подойдёт. Только сообщите Вашему преподавателю, что я Вам сказал, что применён неверный критерий окончания вычисления суммы ряда, и поэтому программа выдаёт неверный результат.

Если изучали, то Вы не до конца продумали решение задачи.

Что же не так? Вы неверно применили признак Лейбница.

Во-первых, этот признак применим только для знакочередующихся рядов, а Ваш ряд - не знакочередующийся, а знакопеременный.

Во-вторых, признак Лейбница - это "сумма остатка знакочередующегося ряда меньше некоторой величины, если любой член остатка ряда меньше некоторой величины", а не "сумма остатка знакочередующегося ряда меньше некоторой величины, если первый член остатка ряда меньше некоторой величины". Последнее тоже верно, но только для рядов, у которых модули членов ряда монотонно убывают. Модули членов Вашего ряда не убывают монотонно из-за косинуса в числителе.

Именно для Вашего ряда, оценка величины суммы остатка ряда получается ужас какая громоздкая. Для размышления: Wolfram MathWorld - Multiple-Angle Formulas. То есть, как-то преобразовать ряд с целью избавления от косинуса кратного угла весьма затруднительно. Но - не беда, можно найти подходящий критерий оценки величины суммы остатка ряда.

Моё решение.

Итак, есть ряд

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
S=\sum_{n=1}^{\infty }\frac{\cos \left( (2n-1)x\right)}{(2n-1)^2}<br />

Числитель общего члена ряда по модулю не превосходит 1. Нагло заменим всякие там косинусы на 1, получим ряд

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
\sum_{n=1}^{\infty }\frac{1}{(2n-1)^2}<br />

Что можно сказать про этот ряд? Он знакопостоянный и сходится. Точное значение суммы этого ряда равно π2/8 (это так, для справки).

Но не это главное. Главное, что k-ый член этого ряда не меньше, чем модуль k-ого члена Вашего ряда, и поэтому k-ый остаток этого ряда не меньше k-ого остатка Вашего ряда, и, ели k-й остаток этого ряда будет меньше ε, то и k-й остаток Вашего ряда будет меньше ε. Осталось найти это самое k, и просуммировать k членов Вашего ряда. Тогда сумма Вашего ряда будет найдена с точностью не хуже ε.

"Наглый" ряд - знакопостоянный, поэтому оценим его остаток по интегральному признаку Коши-Маклорена (Википедия - Интегральный признак Коши-Маклорена):

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
R_k\leq \int_{n=k}^{\infty }\frac{\operatorname{d}n}{(2n-1)^2}=\left.-\frac{1}{2(2n-1)}\right|_k^{\infty }=\lim_{n\rightarrow \infty} \left( -\frac{1}{2(2n-1)}\right)+\frac{1}{2(2k-1)}=\frac{1}{2(2k-1)}<br />

Получим

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
R_k\leq \frac{1}{2(2k-1)}\leq \varepsilon \ \Rightarrow \ \boxed{k\geq \frac{4}{\varepsilon }+8}<br />

Замечу, что полученное "k" никак не зависит от "x", потому что от икс я избавился вместе с косинусом. При ε=10-4 получится k=40008.

Теперь можно подрихтовать Вашу программу:
Pascal
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
const
  e = 1e-4;
  k = round(4 / e + 8);
 
function S(x: real): real;
var
  y: real;
  n: integer;
begin
  y := 0;
  for n := 1 to k do y := y + cos(2 * x * (n - 0.5)) / 4 / (n - 0.5) / (n - 0.5);
  S := y
end;
 
function Y(x: real): real;
begin
  Y := pi * (pi / 2 - abs(x)) / 4
end;
 
var
  x: real;
 
begin
  x := pi / 5;
  while x <= pi do
    begin
      writeln('x = ', x:0:4, ' S = ', S(x):7:4, ' Y=',  Y(x):7:4);
      x := x + pi / 10
    end;
  readln
end.
В программе я, что можно, повыносил за скобки, и не возводил целые числа в квадрат во избежание целочисленного переполнения, поскольку (2k-1)2=800152=6402400225 больше, чем maxint=231-1=2147483647.

На мой вкус, так как в задании указано "проверить справедливость соотношения", я бы результат этого самого соотнрошения тоже бы вывел на печать, если без существенных переделок, то так, например:
Pascal
25
      writeln('x = ', x:0:4, ' S = ', S(x):7:4, ' Y=',  Y(x):7:4, abs(S(x) - Y(x)) < e:6);
1
23.11.2019, 05:21
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.11.2019, 05:21
Помогаю со студенческими работами здесь

Проверить справедливость соотношения (x-a)^n = -a(mod n)
Проверить справедливость соотношения (x-a)^n = -a(mod n), где x, a, n - целые положительные числа,...

Проверить справедливость соотношения. Рекурсия
Здравствуйте. Задание прикреплено во вложения. С- последовательность чисел Каталана. Гугл...

Задание: проверить справедливость соотношения n!=1+\sum_{i=1}^{n-1}i*i!
#pragma hdrstop #include &lt;conio.h&gt; #include &lt;iostream.h&gt; #include &lt;tchar.h&gt;...

Проверить справедливость соотношения, используя вложенные циклы
Включить в работу вывод промежуточных данных Проверить справедливость соотношения...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Как подключить JavaScript файл в другом JavaScript файле
InfoMaster 20.01.2025
В современной веб-разработке организация кодовой базы играет ключевую роль в создании масштабируемых и поддерживаемых приложений. Модульность и правильное структурирование кода стали неотъемлемыми. . .
Как откатить изменения в исходниках, не внесенные в Git
InfoMaster 20.01.2025
При работе с системой контроля версий Git разработчики часто сталкиваются с необходимостью отменить внесенные изменения в исходном коде. Особенно актуальной становится ситуация, когда изменения еще. . .
В чем разница между px, in, mm, pt, dip, dp, sp
InfoMaster 20.01.2025
В мире цифрового дизайна и разработки интерфейсов правильный выбор единиц измерения играет ключевую роль в создании качественного пользовательского опыта. История развития систем измерений для. . .
Как изменить адрес удалённого репозитория (origin) в Git
InfoMaster 20.01.2025
В терминологии Git термин origin является стандартным именем для основного удаленного репозитория, с которым взаимодействует локальная копия проекта. Когда разработчик клонирует репозиторий с. . .
Как переместить последние коммиты в новую ветку (branch) в Git
InfoMaster 20.01.2025
При работе над проектом часто возникают ситуации, когда необходимо изолировать определенные изменения от основной линии разработки. Это может быть связано с экспериментальными функциями, исправлением. . .
Как вернуть результат из асинхронной функции в JavaScript
InfoMaster 20.01.2025
Асинхронное программирование представляет собой фундаментальную концепцию в JavaScript, которая позволяет выполнять длительные операции без блокировки основного потока выполнения программы. В. . .
Какой локальный веб-сервер выбрать
InfoMaster 19.01.2025
В современной веб-разработке локальные веб-серверы играют ключевую роль, предоставляя разработчикам надежную среду для создания, тестирования и отладки веб-приложений без необходимости использования. . .
Почему планшеты и iPad уже не так популярны, как раньше
InfoMaster 19.01.2025
Эра революционных инноваций История планшетов началась задолго до того, как эти устройства стали привычными спутниками нашей повседневной жизни. В начале 1990-х годов появились первые прототипы,. . .
Как самому прошить BIOS ноутбука
InfoMaster 19.01.2025
BIOS (Basic Input/ Output System) представляет собой важнейший компонент любого компьютера или ноутбука, который обеспечивает базовое взаимодействие между аппаратным и программным обеспечением. . .
Какой Linux выбрать для домашнего компьютера
InfoMaster 19.01.2025
Современные реалии выбора операционной системы В современном мире выбор операционной системы для домашнего компьютера становится все более важным решением, которое может существенно повлиять на. . .
Как объединить два словаря одним выражением в Python
InfoMaster 19.01.2025
В мире программирования на Python работа со словарями является неотъемлемой частью разработки. Словари представляют собой мощный инструмент для хранения и обработки данных в формате "ключ-значение". . . .
Как без исключения проверить существование файла в Python
InfoMaster 19.01.2025
При разработке программного обеспечения на Python часто возникает необходимость проверить существование файла перед выполнением операций с ним. Это критически важная задача, которая помогает избежать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru