Наблюдатель
Покинул форум
Сообщений всего: 46
Дата рег-ции: Нояб. 2013
Репутация: 0
|
begin:
CODE:
sleep(rand(300, 800);
if(findimage(Image_№2)==1)
{
n=0;
m=0;
goto ispolnenie;
}
if(findimage(Image_№1)==1)
{
goto cikl1;
}
else goto cikl2;
cikl1:
if(m<220)
{
m=m+1;
goto begin;
}
else goto end;
cikl2:
if(n<220)
{
n=n+1;
goto begin;
}
else goto end;
end:
(Добавление)
Затруднение в том, что я хочу, чтобы отчет по выполнению поисков по парметрам №1 и №3 происходили развязанно друг от друга. Для этого два счетчика циклов с перемменными m и n. Т.е. надо 220 раз искать по случаю перерыва гейма и 220 раз в случае обрыва сетевого соединения. Но как-то это выглядит неуклюже, не гениально (просто). Можно бы использовать и один счетчик, но не желаю произвола ситуации, когда например вначале 120 повторов будет по случаю разрыва соединения, а следыющие 100 - по случаю паузы. Как-то надо сделать гибче.
И это не единственный счетчик циклов в программе. И везде я хочу использовать чтобы не запутаться одну переменную n. По этому в случае удачного перехода к другому (следующему) блоку я переменную n (и m) обнуляю, что бы в счетчике нового блока отсчет начинался с 0.
В идеале, если цикл идет по параметру №1 и мы работаем в цикле с переменной m желательно, чтобы остаток значения n!=0 тоже обнулялся. Как и в обратном случае - если считаем по №3 и имеем дело с n, то и m желательно обнулить.
Хотя слабая сторона данного решения - совокупность циклов может увести в бесконечность, если например сперва 219 насчитали по параметру №1, а потом ситуация поменялась и отсчет пошел по параметру №3 до 123, после чего ситуация вернулась к исходному на время, а потом к вновь к этому - и так до бесконечности.
Я понимаю, что в реальности вероятность осущетвления описанной картины маловероятна, но все же хочется обеспечить теоретическую надежность программы философски...
Можно попытаться над этими счетчиками поставить еще третий, наблюдающий, что суммарная величина пройденных циклов не превысила критический лимит. При этом принципиально желаю вести отчет по разным параметрам независимо. Но слишком сложное - есть малонадежное.
Помогите, как быть!!!!!
(Добавление)
Рад буду практическому и компромиссному решению(концепция прагматизма), однако более желаю рецепт, максимально гладкий с точки зрения теории. Надеюсь, хоть и не совсем ясным языком, но свою проблему я обрисовал. |