Текст задачи к сожалению не могу вставить, т.к. есть только скриншот
Вот мой код, но дисперсия отфильтрованного сигнала выводится не верно. Помогите найти ошибку.
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int N, n;
double A, w, t[10000], x[10000], D1, D2, x2, x_t, t_x, n1;
double x1 = 0;
double D = 0;
double D3 = 0;
bool l;
cin >> N >> n >> A >> w;
n1 = n;
for (int i = 0; i < N; i++) {
cin >> t[i] >> x[i];
x2 = A*sin(w*t[i]);
D1 = (x2 - x[i])*(x2 - x[i])/(N-1);
D = D + D1;
}
for (int i = 0; i < N; i++) {
x_t = 0;
l = 0;
if (i >= n1-1) {
for (int k = i-n1+1; k < n; k++) {
x_t = (x_t + x[k]);
if (k == n-1) {
x_t = x_t/n1;
}
}
}
else {
x_t = 0;
l = 1;
}
if (l == 0) {
n++;
}
x1 = A*sin(w*t[i]);
D2 = (x1 - x_t)*(x1 - x_t)/(N-n1);
D3 = D3 + D2;
}
cout << endl << D << endl << D3;
}
15 5 1.0 1.0
0.0 -0.41456659580494093
0.01 0.21464650810642005
0.02 0.20756670133274546
0.03 -0.020825303889748015
0.04 -0.3658466869439202
0.05 -0.38824196435413005
0.06 0.3187930234482115
0.07 -0.3202780262946304
0.08 0.1801071150373843
0.09 -0.19774814552844183
0.1 0.5640858833751679
0.11 0.2049294648895833
0.12 -0.162058299298603
0.13 0.023129988527424317
0.14 0.21563227823140296
0.088671
0.012303
5 1 1.0 1.0
0.0 -0.388492598904822
0.01 0.42884734334402785
0.02 0.0014352173649309075
0.03 -0.24094732732386703
0.04 -0.2996567949966824
0.128868
0.128868
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники