<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=15651&amp;type=atom" />
	<updated>2020-09-15T20:12:10Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=15651</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142144#p142144" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>GoodLuck пишет:</cite><blockquote><p>зачем весь код скидывать смысл, предположим у меня есть</p></blockquote></div><p>Была упомянута конкретика, а не весь код. Если не хотите показывать свою поделку, вынесите &quot;проблемную&quot; логику в отдельный файл, который наглядно продемонстрирует ожидаемое поведение вместе с тем, что у Вас <strong>не</strong> получается.</p><p>То, что Вы предлагаете к рассмотрению — инвалид в каждой строке. Из этого нежизнеспособного примера возможно понять только то, что если у Вас весь код так организован, то скорее всего проблема не в каком-то конкретном месте, а повсеместно.</p><div class="quotebox"><cite>GoodLuck пишет:</cite><blockquote><p>300 итерации , есть 300 картинок в разных ракурсах по градусам и цвету. Мне нужно, чтобы при достижении значения в массиве из одного данного if KeysList = 300 или count &gt; 300 обновлялось значение переменной до 0 с условиями, предположим что подпрограмма зациклена сама на себя. ...</p></blockquote></div><p>Вы хоть читаете, что пишете, или это просто поток сознания?<br />Не торопитесь. Правильно поставленный вопрос == половина решения. Вам не могут ответить, потому что не могут понять.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2020-09-15T20:12:10Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142144#p142144</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142143#p142143" />
			<content type="html"><![CDATA[<p><strong>GoodLuck</strong></p><p>Ка минимум исправьте:</p><div class="codebox"><pre><code>ImageSearch, Px, Py, 0, 0, A_ScreenWidth, A_ScreenHeight</code></pre></div><p>Иначе находить не будет.</p>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2020-09-15T19:04:19Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142143#p142143</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142136#p142136" />
			<content type="html"><![CDATA[<p><strong>KusochekDobra</strong> Спасибо за ответ.<br />зачем весь код скидывать смысл, предположим у меня есть 300 итерации , есть 300 картинок в разных ракурсах по градусам и цвету. Мне нужно, чтобы при достижении значения в массиве из одного данного if KeysList = 300 или count &gt; 300 обновлялось значение переменной до 0 с условиями, предположим что подпрограмма зациклена сама на себя. Просто я не знаю как правильно, это написать пробовал протестировать через Msgbox не получилось. Область поиска 720, 840, 820, 920. Просто получается, если он не находит значение он продолжает увеличивать число, если я добавляю картинку во время работы скрипта без остановки значение уйдет выше 300, что не даст мне понять отработает ли поиск или нет в моем примере в последующем использовании.</p>]]></content>
			<author>
				<name><![CDATA[GoodLuck]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=41081</uri>
			</author>
			<updated>2020-09-14T20:14:16Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142136#p142136</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142135#p142135" />
			<content type="html"><![CDATA[<p>Больше конкретики, пожалуйста.<br /></p><div class="quotebox"><cite>GoodLuck пишет:</cite><blockquote><p>если значение больше 300</p></blockquote></div><p>Какое значение?<br /></p><div class="quotebox"><cite>GoodLuck пишет:</cite><blockquote><p>то сбросить сбросить &quot;переменную&quot;</p></blockquote></div><p>Какую переменную?</p><p>Ваша запись показывает следующее:<br /></p><div class="codebox"><pre><code>Вход в подпрограмму &quot;key1&quot;.
Объявление цикла на 300 итераций.
Поиск картинки с динамически-составляемым путём к ней, в котором, в одном из случаев идёт обращение к массиву с данными, как к строковой переменной, в координатах 0:0, в области 0:0.
Объявление условия, которое всегда выполняется.
Нажать клавишу &quot;е&quot;.
Присваивание &quot;KeysList&quot; массива с единственным членом, равным нулю.
Выход из подпрограммы, прямо из тела цикла.</code></pre></div><p>Возможно, Вам понятно, что тут происходит, но со стороны это выглядит довольно абсурдно.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2020-09-14T19:32:45Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142135#p142135</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142133#p142133" />
			<content type="html"><![CDATA[<p>Уважаемые камрады. Вопрос той же тематики<br /></p><div class="codebox"><pre><code>key1:
   loop 300 {
      ImageSearch, Px, Py, 0, 0, 0, 0, % &quot;*230 &quot; ArrW[1] KeysList ++KeysList[A_Index] &quot;.png&quot;
      if !ErrorLevel {
        Sendinput, {e}
        KeysList := [0]
      }
   goto, key2
 }
   return</code></pre></div><p>подскажите как сделать проверку, если значение больше 300 то сбросить сбросить &quot;переменную&quot;, или же делать проверку до запуска цикла на условия поиска и сброс перед циклом.</p>]]></content>
			<author>
				<name><![CDATA[GoodLuck]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=41081</uri>
			</author>
			<updated>2020-09-14T18:25:10Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142133#p142133</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142122#p142122" />
			<content type="html"><![CDATA[<p><strong>DD</strong></p><p>Непонятна сама суть цели, что требуется конкретно. Ведь таким макаром можно просто внутри цикла ещё один добавить с отображением просто текста без учёта какой там индекс в основном цикле.</p><div class="codebox"><pre><code>F2::
n := 0
loop
{
 Index := A_Index
 MsgBox %Index%`n%n%

 If Index in 5,6,7,8
 {
  If !L
   L := n
  Loop 3
  {
   MsgBox %Index%`n%L%
  }

  Continue
 }
 If Index = 1
	n += 50+1
 Else
	n += 50
}
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2020-09-13T20:09:26Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142122#p142122</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142119#p142119" />
			<content type="html"><![CDATA[<p>Как сделать, чтобы на витке 5, 6, 7, 8 — цифры показывали 5 201 — 4 раза? —<br /></p><div class="codebox"><pre><code>n := 0
loop
{
   Index := A_Index

   msgbox %Index%`n%n%

   If (Index = 5) or  (Index = 6) or  (Index = 7) or  (Index = 8)
   {
         Index := A_Index - 1
         continue
   }

   If Index = 1
      n+=50+1
   Else
      n+=50
}
return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[DD]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25263</uri>
			</author>
			<updated>2020-09-13T18:16:54Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142119#p142119</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142044#p142044" />
			<content type="html"><![CDATA[<p><strong>teadrinker</strong> Вот блин, реально обновляется... Значит у меня была где-то в другом месте ошибка, из-за которой я думал, что она не обновляется... Спасибо за информацию.</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2020-09-08T17:45:26Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142044#p142044</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142043#p142043" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Botsy пишет:</cite><blockquote><p>эта переменная не обновлялась до 0</p></blockquote></div><p>A_Index с каждым новым началом цикла начинается с одного. Добавьте <em>MsgBox % A_Index</em> во внутренний цикл, чтобы это увидеть.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2020-09-08T17:40:08Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142043#p142043</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142042#p142042" />
			<content type="html"><![CDATA[<p><strong>teadrinker</strong> вообще логика была такая: проверяем блок if, если условие выполняется - то делаем это, а если нет - то делаем другое. Все работало, но так как это было в бесконечном цикле, бывало что одно из условий выполнялось чаще, чем мне хотелось. Я подумал можно ли сделать так, что например, если условие выполняется больше N раз, мы выходим из &quot;внутреннего&quot; цикла. </p><p>С переменной A_index - не получилось, потому что на очередном входе в внутренний цикл, эта переменная не обновлялась до 0. И как это сделать я не знал. Поэтому нашлось вот такое решение с обычной, новой переменной.</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2020-09-08T17:34:37Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142042#p142042</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142038#p142038" />
			<content type="html"><![CDATA[<p><strong>Botsy</strong>, но зачем?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2020-09-08T16:24:54Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142038#p142038</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142036#p142036" />
			<content type="html"><![CDATA[<p><strong>teadrinker</strong> я уже решил проблему другим способом: добавить переменную перед нужным циклом, в блоке if проверять на количество &quot;раз&quot;, а после блока увеличивать и перезаписывать эту переменную на +1.<br /></p><div class="codebox"><pre><code>
loop
{
	Counter:= 0
		loop
		{
			if Counter &gt; N
				{
					Break
				}
			Counter += 1
		}
}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2020-09-08T16:13:31Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142036#p142036</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142023#p142023" />
			<content type="html"><![CDATA[<p>А вы пробовали?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2020-09-07T22:55:29Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142023#p142023</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Как выполнить действие в цикле, каждые n раз. Переменная A_index]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=142021#p142021" />
			<content type="html"><![CDATA[<p>Доброго всем!</p><p>Как можно выполнить определенное действие в цикле, если цикл уже сделан N раз ?<br /></p><div class="codebox"><pre><code>
Loop
{
	Loop
	{
		....
		if 
			{
				Если этот IF сделан больше N раз, выходим из этого цикла и возвращаемся к главному циклу
			{
		else
			{
				....
			}
	}
}
</code></pre></div><p>Если в if добавить <br /></p><div class="codebox"><pre><code>
If A_index &gt;8 
break
</code></pre></div><p>то мы действительно выйдем из внутреннего цикла и вернемся к главному циклу, а когда опять попадём в внутренний цикл и в условие if, то мы сразу выйдем из этого цикла, а не через очередных 8 итераций. Потому что на тот момент, переменная A_index уже будет больше 8.</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2020-09-07T20:51:44Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=142021#p142021</id>
		</entry>
</feed>
