Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13

Нужно сделать алгоритм нахождения скачка сигнала

25.05.2013, 14:54. Показов 1567. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан U[ ] - массив оцифрованного потенциала. Дано еще U пороговое.
Найти скачек и вернуть время скачка.
Миниатюры
Нужно сделать алгоритм нахождения скачка сигнала  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.05.2013, 14:54
Ответы с готовыми решениями:

Нет сигнала на мониторе после скачка напряжения
Добрый день, уважаемые! Пишу челобитную, ибо нуждаюсь в помощи знающих! Случилась беда, и мой железный конь попал в кому. ...

Нужно понять алгоритм нахождения простых чисел в цикле
Хочется понять код, ставил принтф по разным участкам цикла, в итоге понял только что значит условие (i%j == 0). Обьясните пожалуйста...

Нужно сделать преобразование Шаудера для аудио сигнала
Добрый день, нужно сделать преобразование Шаудера для аудио сигнала. Алгоритм есть, но не понимаю, как это реализовать в Matlab. Прошу,...

9
 Аватар для OldFedor
7486 / 4150 / 474
Регистрация: 25.08.2012
Сообщений: 11,530
Записей в блоге: 11
25.05.2013, 16:01
Цитата Сообщение от Gyayjid Посмотреть сообщение
Найти скачек и вернуть время скачка.


Удачи.
2
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
26.05.2013, 02:58  [ТС]
Спасибо за быстрый ответ.

Добавлено через 54 минуты
Извини можешь объяснить этот алгоритм, вот что за dt ты указал?? И вообще не много ввести в курс дела.
0
 Аватар для OldFedor
7486 / 4150 / 474
Регистрация: 25.08.2012
Сообщений: 11,530
Записей в блоге: 11
26.05.2013, 10:45
Цитата Сообщение от Gyayjid Посмотреть сообщение
объяснить этот алгоритм
1. Вводим то, что дано. Это понятно.
- dt - шаг табуляции U(t) или шаг квантования,
- n - размерность массива U(),
- Uпорог - порог компаратора,
2. Зануляем начальные условия
- i - счетчик цикла,
- к - переменная, в которой накапливается количество точек U(t) выше Uпорог,
- Umax - амплитуда выброса (скачка).
- sumT - длительность скачка в сек, можно отсюда убрать.
3. Оформляем цикл по i от 1 до n, Ux - текущее значение U(t).
4. В теле цикла проверяем, если U(t) > Uпорог, то это начало скачка.
Одновременно в этом сценарии ищем текущий максимум проверкой U(t) > Umax.
Если условие выполняется, то очередное значение U(t) еще не максимум.
Переприсваиваем Umax. Первое значение всегда попадет в Umax, если кривая всегда положительна.
Для надежности начальное значение нужно установить отрицательным abs(- U) > adc(U(t)) на
интервале анализа.
Как только U(t) пойдет на спад, то в Umax сохраниться локальный экстремум.
И в том (на подъеме) и в другом (спад) случае считаем k, т.е. как долго
выполнялось условие U(t) > Uпорог или длительность скачка.
5. Если условие U(t) > Umax не выполняется, а в к есть значение, значит до этого был скачек и его надо обработать и вывести на печать.
Если к = 0 ни какого скачка не было и далее анализируем очередное значение U(t).
6. После вывода готовим переменные к поиску следующего пика.

Удачи. Учите.
2
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
27.05.2013, 20:05  [ТС]
Огромное спасибо. Первый раз на этом форуме, да вообще на форумах... не думал что так быстро мне помогут... Благодарю!!!
0
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
08.06.2013, 17:20  [ТС]
Я показал ваш алгоритм и вот мне человек написал программу но она выдает не то что надо. Вы не знаете как написать программу правильно или что исправить нужно в ней?
Вот программа:

C++
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
32
33
34
35
36
37
38
39
#include <iostream>
using namespace std;
 
int main(int argc, char** argv) {
    int *Un,Up,dt;
    int sizeUn;
    cout<<"Enter size of Un:";
    cin>>sizeUn;
    Un = new int [sizeUn];
    for(int i=0;i<sizeUn;i++){
        cin>>Un[i];
    }
    cout<<"Enter next data:"<<endl<<"Up:";
    cin>>Up;
    cout<<"dt:";
    cin>>dt;
    int sumT=0;
    int k=0;
    int Umax=0;
    for(int i=0;i<sizeUn;i++){
        int Ux=Un[i];
        if(Ux>Up){
            if(Ux>Umax){
                Umax=Ux;
            }
            k++;
        }else{
            if(k!=0){
                sumT=k*dt;
                k=0;
                int dU=Umax-Up;
                Umax=0;
                cout<<"dU:"<<dU<<"\tsumT:"<<sumT;
            }
        }
    }
    delete[] Un;
    return 0;
}
0
 Аватар для OldFedor
7486 / 4150 / 474
Регистрация: 25.08.2012
Сообщений: 11,530
Записей в блоге: 11
08.06.2013, 17:39
Цитата Сообщение от Gyayjid Посмотреть сообщение
Вот программа:
Си - не моя тема.
Что делать:
- программу вместе с рис. выложите в соответствующий раздел создав новую тему (лучше всего)
- проверьте алгоритм. Это не сложно.
Задайтесь десятком точек и прямо по блок-схеме идите. Записывайте как изменяются переменные.
Я еще раз проверю. Если найду - выложу.

Навскидку увидел, что Umax=0. Я же писал - возьмите отрицательное число, например -1000000.
1
1967 / 823 / 114
Регистрация: 01.10.2012
Сообщений: 4,844
Записей в блоге: 2
08.06.2013, 18:16
Цитата Сообщение от OldFedor Посмотреть сообщение
Си - не моя тема.
За то время что Вы (только на моей памяти) потратили на помощь халявшикам и рисование блок-схем - Вы могли раз 10 тот С освоить. Это ж нормальный язык, не какой-то Васька. Что мешает?
0
 Аватар для OldFedor
7486 / 4150 / 474
Регистрация: 25.08.2012
Сообщений: 11,530
Записей в блоге: 11
08.06.2013, 18:33
Цитата Сообщение от Igor3D Посмотреть сообщение
Что мешает?
Еще Спиноза говорил - "Свобода - осознанная необходимость"
Значит острой необходимости [/B]не было.
А если серьезно, то конечно немного знаю, но не на столько, что бы советовать.
По большому счету, Igor3D, Вы правы.
0
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
08.06.2013, 19:17  [ТС]
Цитата Сообщение от OldFedor Посмотреть сообщение

Навскидку увидел, что Umax=0. Я же писал - возьмите отрицательное число, например -1000000.
Поставил -1000000 и уже выдает что то похожее. Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.06.2013, 19:17
Помогаю со студенческими работами здесь

Нужно составить программу для нахождения наибольшего общего делителя трех натуральных чисел используя алгоритм Евклида
Нужно составить программу для нахождения наибольшего общего делителя трех натуральных чисел используя алгоритм евклида.

Нужно сделать алгоритм
алгоритм - блок-схему(любую) связанную с планшетным пк.

Нужно сделать алгоритм!)
Составить алгоритм, вводящий значения элементов K последовательности n целых чисел (n&gt;0 вводится в начале работы) и определяющий число...

Нужно сделать разветвлённый алгоритм
Даны целые числа Х, У. Определить, принадлежит ли точка с координатами (Х, У) заштрихованной части плоскости. Вывести на экран изображение...

нужно сделать алгоритм вычисления
Розробити алгоритм обчислення виразу (Таблиця 11.1), використовуючи функції. Варіант 9.


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru