Помогите. Обработать сценарий
- Войдите на сайт для отправки комментариев
Чт, 13/04/2017 - 00:54
Помогите пожалуйста не опытному новичку.
Делаю скеч основанный на флагах (1 и 0) данных, и никак не могу сообразить, в тупике.
Вообщем есть разные данные, которые я привожу в вид 1 или 0, и загоняю в массив. И тут меня заклинило. Как грамотно взять массив, полностью его прочитать. А дальше по его виду, обработать сценарий. тоесть получил 011001 надо сделать это и это, получил 110001 надо сделать другое.
Что не читаю, везде его перебирают да и только.
публикуй код, что и куда ты там загоняешь и что собрался брать
Код ещё сырой, может и вовсе ересть несу...
Вообщем, суть смотрим рабочее напряжение сети, есть 1 нет 0 и включаем таймер. Таймер сработал И напряжение ниже рабочего все отключаем, выровнялось продолжаем работу и так далее. Там выходит 5 возможных вариантов событий.
Вообщем, суть смотрим рабочее напряжение сети, есть 1 нет 0 и включаем таймер. Таймер сработал И напряжение ниже рабочего все отключаем, выровнялось продолжаем работу и так далее. Там выходит 5 возможных вариантов событий.
Похоже вы начали подражать меня.Но тогда надо делать классы Do. В конструктор вставлять указатель на функцию void Do(){} . вот с помощью ее и ключайте таймер или флаги,какие вам надо.
Нет. Подражанием и не пахнет. Все из своей тёмной головушки)))
и мне не надо рулить флагами, я хочу чтобы флаги рулили дальнейшем ходом событий. Тоесть все вычисляеться и заполняет массив, а от его вида уже происходило дальнейшее действие по сценарию... это блок питания в машину который питает Андройд девплату усилок монитор и двумя камерами. Сел ключ вставил, задержка времени или проверка запуска авто, запуск системы, остановился отошёл куда нибудь система отключает усилок камеры и уходит в сон с контролем напряжения борт сети и таймером отключения минут на 20, если ушёл на долго. Ну и если напряжение в это время падает ниже порогового задержка на 5 секунд и аварийное отключение. Чтобы не высадить АКБ.
Тогда еще хуже. Если вы перечитаете "Старый завет", то в нем вы не найдете "рулящих флагов". Ну нет такой конструкции в Си. Рулить может только функция получившая управление. В общем попытайтесь все же изучить эту программу Пакет ее здесь https://yadi.sk/d/jwV-7Ejz3GmADU
Ну и головной файл выложу.
За ссылку спасибо. Изучу, переварю, осмыслю))))
По поводу функция рулит, тоже в курсе. Вот как раз в этом и загвоздка как функции передать весь массив целиком?
Что бы это выглядело так например:
If(весь массив равен == 01000)
{//проверяем реальное напряжение;
//взводим таймер;
}
If(весь массив равен ==11000)
{//отключаем таймер;
//запускаем Андройд, усилитель, сигнал rem;
Sic20101, если Вам достаточно 32 флагов, используйте не массив, а число нужной разрядности, выделяя в нем флаги битовыми операциями.
Блин . Чекнулись с этими флагами. ТС пошел как "настоящий херой и сусанинец" В данной ситуации это уже не флаги а события. Процедуры которые выявляют каким стал "флаг"(какое наступило событие) называются генераторами событий. А вот уже события обрабатывают отработчик события. И да обработчик одногособытия может вызывать генератор серии следующих. И не надо из событий делать всякие массивы. Ну разве что если у вас эти события одного класса.
ПС: И в заключении, насуете делаев или другой хрени, то у вас нормальной работы не будет.