Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Контрольная работа по "Программированию"

Автор:   •  Апрель 25, 2023  •  Контрольная работа  •  4,583 Слов (19 Страниц)  •  161 Просмотры

Страница 1 из 19

Условие задания

[pic 1]

[pic 2]


[pic 3]

Результат работы программы:

[pic 4]


[pic 5]


Листинг программы:

<!DOCTYPE html>

<html>

  <head>

    <meta charset="utf-8">

    <title>4_lab</title>

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>

    <script src="http://code.highcharts.com/highcharts.js"></script>

    <script src="https://unpkg.com/mathjs/lib/browser/math.js"></script>

  </head>

  <body>

    <a>Лабораторная работа N4. Вариант 1. Екатерина Пищейко. 891051</a>

    <div id="signal_1"></div>

    <div id="signal_2"></div>

    <div id="signal_2_ampl"></div>

    <div id="signal_2_ph"></div>

    <div id="signal_3"></div>

    <div id="signal_3_ampl"></div>

    <div id="signal_3_ph"></div>

    <div id="signal_4"></div>

    <div id="signal_4_ampl"></div>

    <div id="signal_4_ph"></div>

    <script>

        $(function () {

            function createChart(id, title, data, type = 'line', colors = ['rgba(5,141,199,0.5)']){

                $('#'+id).highcharts({

                    chart: {

                        type: type,

                    },

                    title:  {

                                text: title,

                            },

                    colors: colors,

                    series: [{

                        data:data

                    }]

                });

            }

            function NoisySignal(amplitude, freq, phase, discrPoints)

            {

                const A = amplitude;

                const n = discrPoints;

                const f = freq;

                const phi = phase;

                const signal = generateSignal();

                const data_1 = signal.map((item,index) =>  [2 * Math.PI * index / 360, item])

                createChart('signal_1','Исходный сигнал', data_1);

                //----------------------------------------------------------------------------

                const ps = parabolicSmoothing();

                const data_2 = ps.map((item,index) =>  [2 * Math.PI * index / 360, item]);

                createChart('signal_2','Сглаживание параболой четвертой степени по 15 точкам (сглаживание Спенсера)', data_2);

                let numHarm = ps.length;

                let sineSp = getSineSpectrum(ps, numHarm);

                let cosineSp = getCosineSpectrum(ps, numHarm);

               

               

                let amplSp = getAmplSpectrum(sineSp, cosineSp, numHarm);

                let phaseSp = getPhaseSpectrum(sineSp, cosineSp, numHarm);

                let data_ampl = [];

                let data_ph = [];

                for (let i=0; i < 50; i++){

                    data_ampl[i] = [i, amplSp[i]];

                    data_ph[i] = [i, phaseSp[i]];

                }

                createChart('signal_2_ph', 'Фазовый спектр', data_ph, 'line', ['red']);

                createChart('signal_2_ampl', 'Амплитудный спектр', data_ampl, 'scatter', ['green']);

                //----------------------------------------------------------------------------

                const ss = slidingSmoothing(3);

                const data_3 = ss.map((item,index) =>  [2 * Math.PI * index / 360, item]);

                createChart('signal_3','Сглаживание скользящим усреднением', data_3);

               

                numHarm = ss.length;

                sineSp = getSineSpectrum(ss, numHarm);

                cosineSp = getCosineSpectrum(ss, numHarm);

               

               

                amplSp = getAmplSpectrum(sineSp, cosineSp, numHarm);

                phaseSp = getPhaseSpectrum(sineSp, cosineSp, numHarm);

                data_ampl = [];

                data_ph = [];

                for (let i=0; i < 50; i++){

                    data_ampl[i] = [i, amplSp[i]];

                    data_ph[i] = [i, phaseSp[i]];

                }

                createChart('signal_3_ph', 'Фазовый спектр', data_ph, 'line', ['red']);

                createChart('signal_3_ampl', 'Амплитудный спектр', data_ampl, 'scatter', ['green']);

...

Скачать:   txt (10.6 Kb)   pdf (472.3 Kb)   docx (431.4 Kb)  
Продолжить читать еще 18 страниц(ы) »
Доступно только на Essays.club