Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Gyayjid
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
#1

Нужно написать код программы по алгоритму - C++

26.05.2013, 02:11. Просмотров 602. Ответов 3
Метки нет (Все метки)

Есть алгоритм нужно по нему написать программу. И если можно с комментариями. Большое спасибо заранее!
Миниатюры
Нужно написать код программы по алгоритму  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2013, 02:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужно написать код программы по алгоритму (C++):

Нужно написать код для программы, которая выводит на экран звездочки ("*") в таком порядке: - C++
Нужна помощь в решении проблемы. Правда язык обучения у меня английский, поэтому некоторые задания на английском. Задание #3: Нужно...

Нужно откомментировать код программы - C++
Здравствуйте! Помогите пожалуйста откомментировать код уже написанной программы. Кое-что я уже откомментировал, что знаю, а остальное...

нужно написать 2 программы - C++
1)Поиск среднего значения элементов массива Найти среднее значение M элементов одномерного массива {ai} длиной n по формуле M=1/n...

Нужно написать код задания на С++ - C++

Нужно написать код на С++ до 14.05.2015 - C++
Здраствуйте, прошу помочь решить лабораторные на завтра(14.05.2015), не понимаю совсем. Зарание спасибо. Вот задания: первая...

Нужно срочно написать программы в С++ - C++
1. Подсчитать и вывести на экран количество элементов массива, равных заданному значению. Заданное значение вводится с клавиатуры. 2....

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
behemoth
44 / 30 / 7
Регистрация: 29.09.2012
Сообщений: 75
Записей в блоге: 1
26.05.2013, 02:35 #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
как-то так шоле:
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;
}
Gyayjid
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
26.05.2013, 03:01  [ТС] #3
Спасибо! Можешь не много объяснить что происходит в программе?)))
Gyayjid
0 / 0 / 0
Регистрация: 25.05.2013
Сообщений: 13
08.06.2013, 13:14  [ТС] #4
Либо я чего то не понимаю либо эта программа не то выдает что надо... Вот описание алгоритма:

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. После вывода готовим переменные к поиску следующего пика.

Нужна программа чтоб найти скачек...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.06.2013, 13:14
Привет! Вот еще темы с ответами:

срочно нужно написать 2 программы - C++
1. Создать программу обработки текстового массива согласно данным условиям: С элементов текстового массива В$(20) сформировать массивы,...

Нужно по блоксхеме написать программный код на с++ - C++

Нужно написать код (Циклические структуры) - C++
Буду благодарен за помощь. Tsuna_Savada, оформите тему в соответствии с правилами форума: текстовые задания набирайте от руки,...

Нужно написать код к простой функции - C++
Нужно написать код для функции: у=sin(x)*cos(x)-3x^2


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.06.2013, 13:14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru