Датчик препятствий и серво(бесполезная коробка)

karl2233
Offline
Зарегистрирован: 05.07.2015

bwn пишет:

karl2233, зачем for там, где ему не место? Оператор весьма специфичный и легко реализуемый на if-ах. ИМХО.

А повторы шагов, вынесите в отдельную функцию и вызывайте сколько хочется. Нас этим архат пытался просветить, но больно академично.

а как это сделать? можно чуть подробнее?

karl2233
Offline
Зарегистрирован: 05.07.2015

Puhlyaviy пишет:
bwn пишет:

А повторы шагов, вынесите в отдельную функцию и вызывайте сколько хочется. Нас этим архат пытался просветить, но больно академично.

ну теперь начинай обьяснять ему про функции :) я за попкормом.

как погляжу, посоветовать что-то толковое - тебе лень/нет времени/и ваще.

а как флудить - так не лень/время есть/и ваще.

сложив 2+2 понимаю что в программировании ты разбираешься чуть больше моего.  если прочесть все твои сообщения, то кроме ссылки на страницу "программирование" и флуда - практически ничего путнего не написал.

палитесь нещадно =)

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

то-то же.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

На слабо меня разводить не нужно. Один фиг не разведусь. Писать за кого код не буду принципиально.
А как показывает опыт, обьяснения принципов в вашем случае не дают результаты...

karl2233
Offline
Зарегистрирован: 05.07.2015

нафиг мне кого-то разводить? тем более, что знаний ты своих, пока, не продемонстировал.

увы и ах.

а "объяснение принципов"...  прочти свои сообщения - найди там, кроме ссылок на страницу "программирование", хоть одно объяснение. 

так что изыдь =) не видишь, я делом занимаюсь.

bwn
Offline
Зарегистрирован: 25.08.2014

karl2233, смысл простой: часто выполняемый кусок выносится в отдельную функцию со своим именем и вызывается из loop или другой функции по каким либо условиям. Бывают разные, читаем здесь

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Эт каким? 5 страница беседы про for... непонимание все тоже.
если читать с начала то напоминает древний анекдот
Едут на машине родители с сыном-дебилом. Сын:
-Папа, а где мама?
Отец:
-Сынок, да вон же она, на заднем сидении.
-Папа, а где мама?
-Сзади сидит, сынок.
-Папа, а гда мама?
-На заднем сидении!
-Папа, а где мама?
Отец хватает сына за голову и разворачавает её назад:
-Смотри: вот твоя мама!!!
Сын:
-Мама, а где папа?

bwn
Offline
Зарегистрирован: 25.08.2014

karl2233 пишет:

нафиг мне кого-то разводить? тем более, что знаний ты своих, пока, не продемонстировал.

увы и ах.

а "объяснение принципов"...  прочти свои сообщения - найди там, кроме ссылок на страницу "программирование", хоть одно объяснение. 

так что изыдь =) не видишь, я делом занимаюсь.

А вот это зря. Пухлявый весьма много дает наводок.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

bwn пишет:

А вот это зря. Пухлявый весьма много дает наводок.


а Доктор пиво хорошее варит. У него даже лицензия на это дело есть.

bwn
Offline
Зарегистрирован: 25.08.2014

Puhlyaviy пишет:
bwn пишет:

А вот это зря. Пухлявый весьма много дает наводок.

а Доктор пиво хорошее варит. У него даже лицензия на это дело есть.

А у меня C2H5OH неплохой (в растворе и с ягодками просто супер), правда лицензий нам не выдают.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

bwn пишет:

А у меня C2H5OH неплохой (в растворе и с ягодками просто супер), правда лицензий нам не выдают.


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

bwn
Offline
Зарегистрирован: 25.08.2014

karl2233
Offline
Зарегистрирован: 05.07.2015

bwn]</p> <p>[quote=karl2233 пишет:

нафиг мне кого-то разводить? тем более, что знаний ты своих, пока, не продемонстировал.

увы и ах.

А вот это зря. Пухлявый весьма много дает наводок.

заметил. они, мож, годные для тех кто уже имеет понятия. а я нет, и до меня оооочень тонкие намёки не доъодят.

типо:

- где берег?

- там.

хоть бы на пример какой-нить сцыль кинули, а то облазил кучу проектов так сложилось впечатление что циклами не пользуются вообще.

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

bwn пишет:

Puhlyaviy пишет:
bwn пишет:

А вот это зря. Пухлявый весьма много дает наводок.

а Доктор пиво хорошее варит. У него даже лицензия на это дело есть.

А у меня C2H5OH неплохой (в растворе и с ягодками просто супер), правда лицензий нам не выдают.

У меня все постепенно: сначало пиво, посадил вишню, малину, сливу, яблоню и нектарину. Как начнут плодоносить - вино, ликер и только потом того-чего-называть-нельзя-но-можно-напробоваться

bwn
Offline
Зарегистрирован: 25.08.2014

karl2233 Ну зачем вам в цикле еще один цикл, что он там делать будет? Распишите свой алгоритм и посмотрите где там нужен цикл?

bwn
Offline
Зарегистрирован: 25.08.2014

JollyBiber пишет:

bwn пишет:

Puhlyaviy пишет:
bwn пишет:

А вот это зря. Пухлявый весьма много дает наводок.

а Доктор пиво хорошее варит. У него даже лицензия на это дело есть.

А у меня C2H5OH неплохой (в растворе и с ягодками просто супер), правда лицензий нам не выдают.

У меня все постепенно: сначало пиво, посадил вишню, малину, сливу, яблоню и нектарину. Как начнут плодоносить - вино, ликер и только потом того-чего-называть-нельзя-но-можно-напробоваться

Так у вас что, и для собственных нужд под запретом?

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

А я спрашивал? :) Не знаю. Просто покупать ингридиенты для пива - продавцы отчитываются кому продают. Для собственных нужд 200 литров пива в год без налога. Но пиво часто "не получается", поэтому я его "выливаю" и так 200 литров и не получается :)

karl2233
Offline
Зарегистрирован: 05.07.2015

Puhlyaviy пишет:
Эт каким? 5 страница беседы про for... непонимание все тоже. если читать с начала то напоминает древний анекдот Едут на машине родители с сыном-дебилом. Сын: -Папа, а где мама? Отец: -Сынок, да вон же она, на заднем сидении. -Папа, а где мама? -Сзади сидит, сынок. -Папа, а гда мама? -На заднем сидении! -Папа, а где мама? Отец хватает сына за голову и разворачавает её назад: -Смотри: вот твоя мама!!! Сын: -Мама, а где папа?

где про "for" пять страниц?!? о_О  две, максимум и то, вместе с флудом. и сам прочти э

ти "подсказки". тема началась с одного - прочти что советовали и как решил?

так что анек не в тему. 

а вот этот (я переделал его):

Приходит нефит на форум Ардуино и грит:

- Камерады, как прикрутить серву к ИК датчику? Что мине делать?

Набегают куча спецов:

- Кури "программирование"!

- Нет, надо децкую программу постаивть!

- Фигня! Надо функции изучить!

- Гонево это, надо с азов начинать, мигай светодиодами!

- Без кода мы тебе не поможем, гони код!                                                                                                                                                              

Неофит код воткнул, и что? Повторение на двух страницах тех же советов!                                                                  

Неофит в перманентном акуе от столь ценых советов, начинает копать. Проблему решил. Возникает новая:

- Камерады, вот новая проблема, памагите, мы люди не местные!

И понеслось:

- Кури, мигай, ставь игрушку и тыркай её.

Неофит, привыкший к такому, пытается в куче флуда найти что-то ценное, иногда находит.

Потмо приходит Супер-Пупер-Мега-Спец и грит:

- Вотжэшь лох! А-ха-ха-ха!

Его вопрошает неофит:

- А чиво лох сразу? Какие ваши доказательства?

МегаСуперСпец:

- А мне некогда фигнёй маятся, так что не разводи меня, иди покури страницу "программирование" там ещё столько  идей осталось!

в самое яблочко!

ну или вот это:

Бегемот лежит в болоте пукает и смотрит на бульбы.

Сынок подплывает:  пап, а пап раскажи мне сказку, Ага счас брошу делом

заниматься, буду ху%%ней страдать.

 

karl2233
Offline
Зарегистрирован: 05.07.2015

bwn пишет:

karl2233 Ну зачем вам в цикле еще один цикл, что он там делать будет? Распишите свой алгоритм и посмотрите где там нужен цикл?


01  void loop() // программа
02 {
03    //Шаг  0
04    if (какие-то условия && MoveStep == 0);
05    {
06        // чего-то делается в этом шаге;
07        MoveStep ++;
08    }
09 
10    for(int  x=0; x<3; x++)
11    {
12             // Шаг  1
13          if (какие-то условия && MoveStep == 1);
14              {
15                // чего-то делается в этом шаге;
16                MoveStep ++;
17               }
18         
19          //Шаг 2
20          if (какие-то условия && MoveStep == 2);
21             {
22               // чего-то делается в этом шаге;
23              MoveStep ++;
24             }
25    }
26     // Шаг 3
27    if (какие-то условия && MoveStep == 3);
28            {
29               // чего-то делается в этом шаге;
30              MoveStep  = 0;
31             }
32 }

нужно что б шаги 1 и 2 повторялись несколько раз при срабатывании ИК датчика, потом шел шаг 3.

грамотного решения я не нашел, поэтому тупо копировал шаг 1 и 2 два раза, потом шаг 3 (он уже стал шаг 7). теперь хочу понять как всё-таки сделать по-уму.

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

заведите переменную как сработает ик присваиваете ей количество повторов. оборачиваете фор в фор с этой переменной, по окончании возвращаете переменной значение 1

karl2233
Offline
Зарегистрирован: 05.07.2015

получается "for" надо привязывать к срабатыванию ИК? т.е. первое и второе срабатывание приводит к циклу, а третье - к продолжению? верно?

а я чего-то думал что к переходу - типо два раза переходит на шаг 1, а потом идёт дальше.

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

логику можно впихнуть любую.

bwn
Offline
Зарегистрирован: 25.08.2014

Можете так.

void loop(){
if (Ик проверили) {

 че то делаем() }

If (проверяем другое) {.......
}
}

че то делаем() {

здесь ваши For-ы и прочее
}

Гриша
Offline
Зарегистрирован: 27.04.2014

karl2233, в посте 218 все  проблемы в MoveStep необходимо вообще выкинуть его из for, а сли есть необходимость после выполнения некоего алгоритма  в фор, наш MoveStep должен быть равен определенному значению, конструкция будет примерно такая..


01  void loop() // программа
02 {
03    //Шаг  0
04    if (какие-то условия && MoveStep == 0);
05    {
06        // чего-то делается в этом шаге;
07        MoveStep ++;
08    }
09 if (обшее условие для шагов 1 и 2)
{
10    for(int  x=0; x<3; x++)
11    {
12             // Шаг  1
13          if (какие-то условия );
14              {
15                // чего-то делается в этом шаге;
16                
17               }
18         
19          //Шаг 2
20          if (какие-то условия );
21             {
22               // чего-то делается в этом шаге;
23              
24             }
25    }
MoveStep = 3 // присваиваем необходимое значение при выходе из for
}
26     // Шаг 3
27    if (какие-то условия && MoveStep == 3);
28            {
29               // чего-то делается в этом шаге;
30              MoveStep  = 0;
31             }
32 }

если с фор и иф немного понятно (по вашему заверению), то я вижу что мухи и котлеты пока вместе... 

иф - переводится как "если" так и читайте его так же... "если" это и это то делать это, а "если" не так то не делать.

for - ""будем делать пока" (выполняется второе условие for... <=3)" зачем огород с множеством условий?

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Занудамодусвкл:

делай пока - это while

for - это делай столько-то раз.

karl2233
Offline
Зарегистрирован: 05.07.2015

Гриша пишет:

karl2233, в посте 218 все  проблемы в MoveStep необходимо вообще выкинуть его из for, а сли есть необходимость после выполнения некоего алгоритма  в фор, наш MoveStep должен быть равен определенному значению, конструкция будет примерно такая..


01  void loop() // программа
02 {
03    //Шаг  0
04    if (какие-то условия && MoveStep == 0);
05    {
06        // чего-то делается в этом шаге;
07        MoveStep ++;
08    }
09 if (обшее условие для шагов 1 и 2)
{
10    for(int  x=0; x<3; x++)
11    {
12             // Шаг  1
13          if (какие-то условия );
14              {
15                // чего-то делается в этом шаге;
16                
17               }
18         
19          //Шаг 2
20          if (какие-то условия );
21             {
22               // чего-то делается в этом шаге;
23              
24             }
25    }
MoveStep = 3 // присваиваем необходимое значение при выходе из for
}
26     // Шаг 3
27    if (какие-то условия && MoveStep == 3);
28            {
29               // чего-то делается в этом шаге;
30              MoveStep  = 0;
31             }
32 }

если с фор и иф немного понятно (по вашему заверению), то я вижу что мухи и котлеты пока вместе... 

иф - переводится как "если" так и читайте его так же... "если" это и это то делать это, а "если" не так то не делать.

for - ""будем делать пока" (выполняется второе условие for... <=3)" зачем огород с множеством условий?

ООО! спасибо! лишний раз убеждаюсь что надо плотнее сесть за С++.

Гриша
Offline
Зарегистрирован: 27.04.2014

karl2233 пишет:

ООО! спасибо! лишний раз убеждаюсь что надо плотнее сесть за С++.

НЕТ! НЕТ! и еще раз НЕТ! у Вас проблема с построением алгоритмов! так сказать нет цепочки. Во всяком случае так я это вижу по кускам кодов. т.е. нет четко сформированного набора условий, и при этом в этом наборе  должно быть "необходимо и достаточно" способов (условий) его реализации. В любом сотоянии системы выполняется хотябы 1 условие! (это первое). Существует условие или набор, которое переводит систему из одного состояния в другое  (это второе). в некоторых случаях пишут третье - невыполнимое условие, состояние в которое можно попасть по ошибке (например: набрать 26 часов (вместо 16), если установка посимвольная)  - соответственно выполняется сброс ситемы в исходное или иное состояние.

И нечего читать С++ в этом топике уже столько написано, что ни один учебник мягче не разжует, а уж алгоритмы составлять вообще карандашиком на листочке учатся....

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

karl2233 пишет:
тем более, что знаний ты своих, пока, не продемонстировал.

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

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

andriano пишет:

karl2233 пишет:
тем более, что знаний ты своих, пока, не продемонстировал.

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

спам !!!!!

Гриша
Offline
Зарегистрирован: 27.04.2014

karl2233, как успехи?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Гриша пишет:

karl2233, как успехи?

karl2233
Offline
Зарегистрирован: 05.07.2015

Гриша пишет:

karl2233, как успехи?

Гриша, я уехал, так что пока никак. а шоб время не пропадало накапливаю [s]первоначальный капитал[/s] знания - из-за этого пришлось купить планшет, закачать в него кучу книг и програмулек.  так что я как заправский "тыжпрограммист" теперь кодю не на лету (это в прошлом) а на ходу =)

в начале августа ожидаем серию №1, сезон 2 )))))) запасайтесь попкорном и занимайте места, согласно купленым билетам ))))

Пухлявый, тебе персональное приглашение на это сеанс магии [s]меча[/s] Ардуино. тока эта, давай ужо новые советы ко второму сезону ;)

смотрю ты тож время зря не теряешь: пока я С++ осваиваю, ты стал [s]мастером[/s] Мастером в Paint =)))))